File: BTriMeshInteractionCpData.cpp

package info (click to toggle)
esys-particle 2.3.4%2Bdfsg1-4
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 13,036 kB
  • ctags: 10,805
  • sloc: cpp: 80,009; python: 5,872; makefile: 1,243; sh: 313; perl: 225
file content (80 lines) | stat: -rw-r--r-- 2,409 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
/////////////////////////////////////////////////////////////
//                                                         //
// Copyright (c) 2003-2014 by The University of Queensland //
// Centre for Geoscience Computing                         //
// http://earth.uq.edu.au/centre-geoscience-computing      //
//                                                         //
// Primary Business: Brisbane, Queensland, Australia       //
// Licensed under the Open Software License version 3.0    //
// http://www.apache.org/licenses/LICENSE-2.0          //
//                                                         //
/////////////////////////////////////////////////////////////

#include "Model/BTriMeshInteractionCpData.h"
#include "Model/BTriangleInteraction.h"

/*!
  Default constructor. Particle and Triangle ID are set to -1,
  anchor vector to (0,0,0) -> the resulting data mark an invalid
  Interaction
*/
BTriMeshInteractionCpData::BTriMeshInteractionCpData() : 
  m_ap(),m_tid(-1),m_pid(-1)
{}

/*!
  Construct CpData from bonded triangle interaction - takes particle and triangle ID and particle anchor point

  \param BTI the bonded triangle interaction (reference)
*/
BTriMeshInteractionCpData::BTriMeshInteractionCpData(const BTriangleInteraction &BTI)
{
  m_pid=BTI.getPid();
  m_tid=BTI.getTid();
  m_ap=BTI.getAP();
}

/*!
  Set the data of an existing CpData object to those of a given 
  bonded triangle interaction.

  \param BTI the bonded triangle interaction (reference)
*/
void BTriMeshInteractionCpData::set(const BTriangleInteraction& BTI)
{
  m_pid=BTI.getPid();
  m_tid=BTI.getTid();
  m_ap=BTI.getAP();
}

/*!
  Write restartable CpData to output stream. The format is
  tid pid ap_x ap_y ap_z
  where ap_? are the vector components of the anchor point

  \warning The format isn't set in stone - don't rely on this for reading functions at the moment
*/ 
void BTriMeshInteractionCpData::saveCheckPointData(std::ostream& ost)
{
  const char delim = ' ';
  ost << m_pid << delim
      << m_tid << delim
      << m_ap;
}

/*
   Write visualization CpData to output stream.
*/
void BTriMeshInteractionCpData::saveSnapShotData(std::ostream& ost){
  const char delim = ' ';
  ost << m_pid << delim
      << m_tid << delim
      << m_ap;
}

/*!
  Load CpData for bonded triangle interaction from input stream

*/
void BTriMeshInteractionCpData::loadCheckPointData(std::istream& ist)
{}