Changeset 4140
- Timestamp:
- 06/23/10 07:50:02 (15 years ago)
- Location:
- issm/trunk/src/c/objects
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/c/objects/Node.cpp
r4118 r4140 27 27 /*}}}*/ 28 28 /*FUNCTION Node::Node(int id, int vertex_id, int uppernode_id, int numdofs, NodeProperties*) {{{2*/ 29 Node::Node(int node_id,int node_ vertex_id, int node_upper_node_id, int node_numdofs):29 Node::Node(int node_id,int node_sid, int node_vertex_id, int node_upper_node_id, int node_numdofs): 30 30 indexing(node_numdofs), 31 31 hvertex(&node_vertex_id,1), … … 33 33 34 34 this->id=node_id; 35 this->sid=node_sid; 35 36 this->inputs=new Inputs(); 36 37 } 37 38 /*}}}*/ 38 39 /*FUNCTION Node::Node(int id, DofIndexing* indexing, Hook* vertex, Hook* uppernode,Inputs* inputs,int analysis_type){{{2*/ 39 Node::Node(int node_id, DofIndexing* node_indexing, Hook* node_vertex, Hook* node_upper_node,Inputs* node_inputs,int analysis_type):40 Node::Node(int node_id,int node_sid, DofIndexing* node_indexing, Hook* node_vertex, Hook* node_upper_node,Inputs* node_inputs,int analysis_type): 40 41 indexing(node_indexing), 41 42 hvertex(node_vertex), … … 44 45 /*all the initialization has been done by the initializer, just fill in the id: */ 45 46 this->id=node_id; 47 this->sid=node_sid; 46 48 this->analysis_type=analysis_type; 47 49 … … 55 57 /*}}}*/ 56 58 /*FUNCTION Node::Node(int node_id,int vertex_id,int io_index, IoModel* iomodel,int analysis_type) {{{2*/ 57 Node::Node(int node_id,int vertex_id,int io_index, IoModel* iomodel,int analysis_type){59 Node::Node(int node_id,int node_sid,int vertex_id,int io_index, IoModel* iomodel,int analysis_type){ 58 60 59 61 /*Intermediary*/ … … 63 65 64 66 /*id: */ 65 this->id=node_id; //matlab indexing 67 this->id=node_id; 68 this->sid=node_sid; 66 69 this->analysis_type=analysis_type; 67 70 … … 188 191 Object* Node::copy() { 189 192 190 return new Node(this->id, &this->indexing, &this->hvertex,&this->hupper_node,this->inputs,this->analysis_type);193 return new Node(this->id,this->sid,&this->indexing, &this->hvertex,&this->hupper_node,this->inputs,this->analysis_type); 191 194 192 195 } … … 198 201 printf("Node:\n"); 199 202 printf(" id: %i\n",id); 203 printf(" sid: %i\n",sid); 200 204 printf(" analysis_type: %s\n",EnumAsString(analysis_type)); 201 205 indexing.DeepEcho(); … … 222 226 223 227 memcpy(&id,marshalled_dataset,sizeof(id));marshalled_dataset+=sizeof(id); 228 memcpy(&sid,marshalled_dataset,sizeof(sid));marshalled_dataset+=sizeof(sid); 224 229 memcpy(&analysis_type,marshalled_dataset,sizeof(analysis_type));marshalled_dataset+=sizeof(analysis_type); 225 230 … … 242 247 printf("Node:\n"); 243 248 printf(" id: %i\n",id); 249 printf(" sid: %i\n",sid); 244 250 printf(" analysis_type: %s\n",EnumAsString(analysis_type)); 245 251 indexing.Echo(); … … 290 296 int Node::Id(void){ return id; } 291 297 /*}}}*/ 298 /*FUNCTION Node::Sid{{{2*/ 299 int Node::Sid(void){ return sid; } 300 /*}}}*/ 292 301 /*FUNCTION Node::GetVertexId {{{2*/ 293 302 int Node::GetVertexId(void){ … … 327 336 /*marshall Node data: */ 328 337 memcpy(marshalled_dataset,&id,sizeof(id));marshalled_dataset+=sizeof(id); 338 memcpy(marshalled_dataset,&sid,sizeof(sid));marshalled_dataset+=sizeof(sid); 329 339 memcpy(marshalled_dataset,&analysis_type,sizeof(analysis_type));marshalled_dataset+=sizeof(analysis_type); 330 340 … … 351 361 352 362 return sizeof(id)+ 363 sizeof(sid)+ 353 364 indexing.MarshallSize()+ 354 365 hvertex.MarshallSize()+ -
issm/trunk/src/c/objects/Node.h
r4117 r4140 22 22 private: 23 23 24 int id; 24 int id; //unique arbitrary id. 25 int sid; //sid for "serial" id, ie the rank of this node in the nodes dataset, if the dataset was serial on 1 cpu. 25 26 26 27 DofIndexing indexing; … … 34 35 /*FUNCTION constructors, destructors {{{1*/ 35 36 Node(); 36 Node(int id,int vertex_id, int upper_node_id, int numberofdofs);37 Node(int id, DofIndexing* indexing, Hook* vertex, Hook* upper_node, Inputs* inputs,int analysis_type);38 Node(int node_id,int vertex_id,int io_index, IoModel* iomodel,int analysis_type);37 Node(int id,int sid, int vertex_id, int upper_node_id, int numberofdofs); 38 Node(int id,ind sid, DofIndexing* indexing, Hook* vertex, Hook* upper_node, Inputs* inputs,int analysis_type); 39 Node(int node_id,int node_sid, int vertex_id,int io_index, IoModel* iomodel,int analysis_type); 39 40 ~Node(); 40 41 /*}}}*/ … … 46 47 int Enum(); 47 48 int Id(void); 49 int Sid(void); 48 50 int GetVertexDof(void); 49 51 int GetVertexId(void); -
issm/trunk/src/c/objects/Vertex.cpp
r4091 r4140 24 24 /*}}}*/ 25 25 /*FUNCTION Vertex::Vertex(int vertex_id, double vertex_x, double vertex_y, double vertex_z, double vertex_sigma){{{2*/ 26 Vertex::Vertex(int vertex_id, double vertex_x, double vertex_y, double vertex_z, double vertex_sigma){27 this->Init(vertex_id, vertex_ x, vertex_y, vertex_z, vertex_sigma);26 Vertex::Vertex(int vertex_id, int vertex_sid,double vertex_x, double vertex_y, double vertex_z, double vertex_sigma){ 27 this->Init(vertex_id, vertex_sid,vertex_x, vertex_y, vertex_z, vertex_sigma); 28 28 } 29 29 /*}}}*/ 30 30 /*FUNCTION Vertex::Init{{{2*/ 31 void Vertex::Init(int vertex_id, double vertex_x, double vertex_y, double vertex_z, double vertex_sigma){31 void Vertex::Init(int vertex_id, int vertex_sid,double vertex_x, double vertex_y, double vertex_z, double vertex_sigma){ 32 32 33 33 /*all the initialization has been done by the initializer, just fill in the id: */ 34 34 this->id=vertex_id; 35 this->sid=vertex_sid; 35 36 this->x=vertex_x; 36 37 this->y=vertex_y; … … 42 43 } 43 44 /*}}}*/ 44 /*FUNCTION Vertex::Vertex(int vertex_id, int i, IoModel* iomodel) {{{2*/45 Vertex::Vertex(int vertex_id, int i, IoModel* iomodel){46 47 this->Init(vertex_id, iomodel->x[i],iomodel->y[i],iomodel->z[i],(iomodel->z[i]-iomodel->bed[i])/(iomodel->thickness[i]));45 /*FUNCTION Vertex::Vertex(int vertex_id, int vertex_sid,int i, IoModel* iomodel) {{{2*/ 46 Vertex::Vertex(int vertex_id, int vertex_sid,int i, IoModel* iomodel){ 47 48 this->Init(vertex_id, vertex_sid, iomodel->x[i],iomodel->y[i],iomodel->z[i],(iomodel->z[i]-iomodel->bed[i])/(iomodel->thickness[i])); 48 49 49 50 } … … 82 83 83 84 memcpy(&id,marshalled_dataset,sizeof(id));marshalled_dataset+=sizeof(id); 85 memcpy(&sid,marshalled_dataset,sizeof(sid));marshalled_dataset+=sizeof(sid); 84 86 memcpy(&x,marshalled_dataset,sizeof(x));marshalled_dataset+=sizeof(x); 85 87 memcpy(&y,marshalled_dataset,sizeof(y));marshalled_dataset+=sizeof(y); … … 100 102 printf("Vertex:\n"); 101 103 printf(" id: %i\n",id); 104 printf(" sid: %i\n",sid); 102 105 printf(" x: %g\n",x); 103 106 printf(" y: %g\n",y); … … 120 123 int Vertex::Id(void){ return id; } 121 124 /*}}}*/ 125 /*FUNCTION Sid{{{2*/ 126 int Vertex::Sid(void){ return sid; } 127 /*}}}*/ 122 128 /*FUNCTION Marshall {{{2*/ 123 129 void Vertex::Marshall(char** pmarshalled_dataset){ … … 137 143 /*marshall Vertex data: */ 138 144 memcpy(marshalled_dataset,&id,sizeof(id));marshalled_dataset+=sizeof(id); 145 memcpy(marshalled_dataset,&sid,sizeof(sid));marshalled_dataset+=sizeof(sid); 139 146 memcpy(marshalled_dataset,&x,sizeof(x));marshalled_dataset+=sizeof(x); 140 147 memcpy(marshalled_dataset,&y,sizeof(y));marshalled_dataset+=sizeof(y); … … 152 159 153 160 return sizeof(id)+ 161 sizeof(sid)+ 154 162 sizeof(x)+ 155 163 sizeof(y)+ -
issm/trunk/src/c/objects/Vertex.h
r4091 r4140 22 22 23 23 int id; 24 int sid; //sid for "serial" id, ie the rank of this vertex in the vertices dataset, if the dataset was serial on 1 cpu. 24 25 double x; 25 26 double y; … … 33 34 /*FUNCTION constructors, destructors {{{1*/ 34 35 Vertex(); 35 Vertex(int id, double x, double y, double z, double sigma);36 void Init(int id, double x, double y, double z, double sigma);37 Vertex(int id, int i, IoModel* iomodel);36 Vertex(int id, int sid,double x, double y, double z, double sigma); 37 void Init(int id, int sid, double x, double y, double z, double sigma); 38 Vertex(int id, int sid, int i, IoModel* iomodel); 38 39 ~Vertex(); 39 40 /*}}}*/ … … 45 46 int Enum(); 46 47 int Id(void); 48 int Sid(void); 47 49 void Marshall(char** pmarshalled_dataset); 48 50 int MarshallSize();
Note:
See TracChangeset
for help on using the changeset viewer.