Changeset 13790
- Timestamp:
- 10/22/12 13:36:40 (12 years ago)
- Location:
- issm/trunk-jpl/src/c/Container
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/Container/Elements.cpp
r13780 r13790 46 46 for ( object=objects.begin() ; object < objects.end(); object++ ){ 47 47 48 element= (Element*)(*object);48 element=dynamic_cast<Element*>((*object)); 49 49 element->Configure(elements,loads,nodes,materials,parameters); 50 50 … … 58 58 //Process results to be output in the correct units 59 59 for(int i=0;i<this->Size();i++){ 60 Element* element= (Element*)this->GetObjectByOffset(i);60 Element* element=dynamic_cast<Element*>(this->GetObjectByOffset(i)); 61 61 element->ProcessResultsUnits(); 62 62 } … … 67 67 68 68 for (int i=0;i<this->Size();i++){ 69 Element* element= (Element*)this->GetObjectByOffset(i);69 Element* element=dynamic_cast<Element*>(this->GetObjectByOffset(i)); 70 70 element->DeleteResults(); 71 71 } … … 116 116 for(i=0;i<this->Size();i++){ 117 117 118 Element* element= (Element*)this->GetObjectByOffset(i);118 Element* element=dynamic_cast<Element*>(this->GetObjectByOffset(i)); 119 119 element->PatchSize(&element_numrows,&element_numvertices,&element_numnodes); 120 120 … … 141 141 count=0; 142 142 for(i=0;i<this->Size();i++){ 143 Element* element= (Element*)this->GetObjectByOffset(i);143 Element* element=dynamic_cast<Element*>(this->GetObjectByOffset(i)); 144 144 element->PatchFill(&count,patch); 145 145 } … … 156 156 for ( object=objects.begin() ; object < objects.end(); object++ ){ 157 157 158 element= (Element*)(*object);158 element=dynamic_cast<Element*>((*object)); 159 159 element->SetCurrentConfiguration(elements,loads,nodes,materials,parameters); 160 160 … … 208 208 if(my_rank==minrank){ 209 209 if(this->Size()==0) _error_("Cannot write results because there is no element??"); 210 Element* element= (Element*)this->GetObjectByOffset(0);210 Element* element=dynamic_cast<Element*>(this->GetObjectByOffset(0)); 211 211 element->ListResultsInfo(&resultsenums,&resultssizes,&resultstimes,&resultssteps,&numberofresults); 212 212 } … … 240 240 241 241 for(int j=0;j<this->Size();j++){ 242 Element* element= (Element*)this->GetObjectByOffset(j);242 Element* element=dynamic_cast<Element*>(this->GetObjectByOffset(j)); 243 243 element->GetVectorFromResults(vector,i,resultsenums[i],resultssizes[i]); 244 244 } … … 314 314 315 315 for(int i=0;i<this->Size();i++){ 316 Element* element= (Element*)this->GetObjectByOffset(i);316 Element* element=dynamic_cast<Element*>(this->GetObjectByOffset(i)); 317 317 element->InputDuplicate(input_enum,output_enum); 318 318 } -
issm/trunk-jpl/src/c/Container/Nodes.cpp
r13622 r13790 46 46 for ( object=objects.begin() ; object < objects.end(); object++ ){ 47 47 48 node= (Node*)(*object);48 node=dynamic_cast<Node*>(*object); 49 49 node->Configure(nodes,vertices); 50 50 … … 76 76 /*Go through objects, and distribute dofs locally, from 0 to numberofdofsperobject*/ 77 77 for (i=0;i<this->Size();i++){ 78 Node* node= (Node*)this->GetObjectByOffset(i);78 Node* node=dynamic_cast<Node*>(this->GetObjectByOffset(i)); 79 79 80 80 /*Check that this node corresponds to our analysis currently being carried out: */ … … 105 105 for (i=0;i<this->Size();i++){ 106 106 /*Check that this node corresponds to our analysis currently being carried out: */ 107 Node* node= (Node*)this->GetObjectByOffset(i);107 Node* node=dynamic_cast<Node*>(this->GetObjectByOffset(i)); 108 108 if (node->InAnalysis(analysis_type)){ 109 109 node->OffsetDofs(dofcount,setenum); … … 122 122 123 123 for (i=0;i<this->Size();i++){ 124 Node* node= (Node*)this->GetObjectByOffset(i);124 Node* node=dynamic_cast<Node*>(this->GetObjectByOffset(i)); 125 125 if (node->InAnalysis(analysis_type)){ 126 126 node->ShowTrueDofs(truedofs,maxdofspernode,setenum);//give maxdofspernode, column size, so that nodes can index into truedofs … … 136 136 /* Now every cpu knows the true dofs of everyone else that is not a clone*/ 137 137 for (i=0;i<this->Size();i++){ 138 Node* node= (Node*)this->GetObjectByOffset(i);138 Node* node=dynamic_cast<Node*>(this->GetObjectByOffset(i)); 139 139 if (node->InAnalysis(analysis_type)){ 140 140 node->UpdateCloneDofs(alltruedofs,maxdofspernode,setenum); … … 185 185 for(i=0;i<this->Size();i++){ 186 186 187 Node* node= (Node*)this->GetObjectByOffset(i);187 Node* node=dynamic_cast<Node*>(this->GetObjectByOffset(i)); 188 188 189 189 /*Check that this node corresponds to our analysis currently being carried out: */ … … 212 212 for(i=0;i<this->Size();i++){ 213 213 214 Node* node= (Node*)this->GetObjectByOffset(i);214 Node* node=dynamic_cast<Node*>(this->GetObjectByOffset(i)); 215 215 216 216 /*Check that this node corresponds to our analysis currently being carried out: */ … … 242 242 for(i=0;i<this->Size();i++){ 243 243 244 Node* node= (Node*)this->GetObjectByOffset(i);244 Node* node=dynamic_cast<Node*>(this->GetObjectByOffset(i)); 245 245 246 246 /*Check that this node corresponds to our analysis currently being carried out: */ … … 277 277 /*Now go through all nodes, and get how many dofs they own, unless they are clone nodes: */ 278 278 for(i=0;i<this->Size();i++){ 279 Node* node= (Node*)this->GetObjectByOffset(i);279 Node* node=dynamic_cast<Node*>(this->GetObjectByOffset(i)); 280 280 281 281 /*Ok, this object is a node, ask it to plug values into partition: */ … … 304 304 for(i=0;i<this->Size();i++){ 305 305 306 Node* node= (Node*)this->GetObjectByOffset(i);306 Node* node=dynamic_cast<Node*>(this->GetObjectByOffset(i)); 307 307 308 308 /*Check that this node corresponds to our analysis currently being carried out: */ … … 344 344 for(int i=0;i<this->Size();i++){ 345 345 346 Node* node= (Node*)this->GetObjectByOffset(i);346 Node* node=dynamic_cast<Node*>(this->GetObjectByOffset(i)); 347 347 348 348 /*Check that this node corresponds to our analysis currently being carried out: */ … … 363 363 for ( object=objects.begin() ; object < objects.end(); object++ ){ 364 364 365 node= (Node*)(*object);365 node=dynamic_cast<Node*>(*object); 366 366 node->SetCurrentConfiguration(nodes,vertices); 367 367 -
issm/trunk-jpl/src/c/Container/Options.h
r13780 r13790 99 99 else{ 100 100 /*Make a copy*/ 101 char* outstring=NULL; 102 int stringsize; 103 104 stringsize=strlen(default_value)+1; 105 outstring=xNew<char>(stringsize); 101 int stringsize=strlen(default_value)+1; 102 char* outstring=xNew<char>(stringsize); 106 103 xMemCpy<char>(outstring,default_value,stringsize); 107 104 *pvalue=outstring;
Note:
See TracChangeset
for help on using the changeset viewer.