- Timestamp:
- 07/24/12 10:36:19 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/c/objects/ExternalResults/DoubleExternalResult.cpp
r12330 r12706 4 4 5 5 /*header files: */ 6 /*{{{ 1*/6 /*{{{*/ 7 7 #ifdef HAVE_CONFIG_H 8 8 #include <config.h> … … 21 21 22 22 /*DoubleExternalResult constructors and destructor*/ 23 /*FUNCTION DoubleExternalResult::DoubleExternalResult(){{{ 1*/23 /*FUNCTION DoubleExternalResult::DoubleExternalResult(){{{*/ 24 24 DoubleExternalResult::DoubleExternalResult(){ 25 25 return; 26 26 } 27 27 /*}}}*/ 28 /*FUNCTION DoubleExternalResult::DoubleExternalResult(int enum_type, double value){{{1*/29 DoubleExternalResult::DoubleExternalResult(int in_id, int in_enum_type, double in_value,int in_step, double in_time){28 /*FUNCTION DoubleExternalResult::DoubleExternalResult(int enum_type,IssmDouble value){{{*/ 29 DoubleExternalResult::DoubleExternalResult(int in_id, int in_enum_type,IssmDouble in_value,int in_step, IssmDouble in_time){ 30 30 31 31 id=in_id; … … 36 36 } 37 37 /*}}}*/ 38 /*FUNCTION DoubleExternalResult::~DoubleExternalResult(){{{ 1*/38 /*FUNCTION DoubleExternalResult::~DoubleExternalResult(){{{*/ 39 39 DoubleExternalResult::~DoubleExternalResult(){ 40 40 return; … … 43 43 44 44 /*Object virtual functions definitions:*/ 45 /*FUNCTION DoubleExternalResult::Echo {{{ 1*/45 /*FUNCTION DoubleExternalResult::Echo {{{*/ 46 46 void DoubleExternalResult::Echo(void){ 47 47 this->DeepEcho(); 48 48 } 49 49 /*}}}*/ 50 /*FUNCTION DoubleExternalResult::DeepEcho{{{ 1*/50 /*FUNCTION DoubleExternalResult::DeepEcho{{{*/ 51 51 void DoubleExternalResult::DeepEcho(void){ 52 52 53 printf("DoubleExternalResult:\n");54 printf(" id: %i\n",this->id);55 printf(" enum: %i (%s)\n",this->enum_type,EnumToStringx(this->enum_type));56 printf(" value: %g\n",this->value);57 printf(" step: %i\n",this->step);58 printf(" time: %g\n",this->time);53 _printLine_("DoubleExternalResult:"); 54 _printLine_(" id: " << this->id); 55 _printLine_(" enum: " << this->enum_type << " (" << EnumToStringx(this->enum_type) << ")"); 56 _printLine_(" value: " << this->value); 57 _printLine_(" step: " << this->step); 58 _printLine_(" time: " << this->time); 59 59 } 60 60 /*}}}*/ 61 /*FUNCTION DoubleExternalResult::Id{{{ 1*/61 /*FUNCTION DoubleExternalResult::Id{{{*/ 62 62 int DoubleExternalResult::Id(void){ return -1; } 63 63 /*}}}*/ 64 /*FUNCTION DoubleExternalResult::MyRank{{{ 1*/64 /*FUNCTION DoubleExternalResult::MyRank{{{*/ 65 65 int DoubleExternalResult::MyRank(void){ 66 66 extern int my_rank; … … 68 68 } 69 69 /*}}}*/ 70 /*FUNCTION DoubleExternalResult::ObjectEnum{{{ 1*/70 /*FUNCTION DoubleExternalResult::ObjectEnum{{{*/ 71 71 int DoubleExternalResult::ObjectEnum(void){ 72 72 … … 75 75 } 76 76 /*}}}*/ 77 /*FUNCTION DoubleExternalResult::copy{{{ 1*/77 /*FUNCTION DoubleExternalResult::copy{{{*/ 78 78 Object* DoubleExternalResult::copy() { 79 79 … … 84 84 85 85 /*DoubleExternalResult management: */ 86 /*FUNCTION DoubleExternalResult::WriteData{{{ 1*/86 /*FUNCTION DoubleExternalResult::WriteData{{{*/ 87 87 void DoubleExternalResult::WriteData(FILE* fid,bool io_gather){ 88 88 … … 92 92 char *name = NULL; 93 93 extern int my_rank; 94 IssmPDouble passiveDouble; 94 95 95 96 /*return if now on cpu 0: */ … … 101 102 fwrite(&length,sizeof(int),1,fid); 102 103 fwrite(name,length,1,fid); 103 x free((void**)&name);104 xDelete<char>(name); 104 105 105 106 /*Now write time and step: */ 106 fwrite(&time,sizeof(double),1,fid); 107 passiveDouble=reCast<IssmPDouble>(time); 108 fwrite(&passiveDouble,sizeof(IssmPDouble),1,fid); 107 109 fwrite(&step,sizeof(int),1,fid); 108 110 109 /*writing a double, type is 1, size is 1: */111 /*writing a IssmDouble, type is 1, size is 1: */ 110 112 type=1; 111 113 size=1; 112 114 fwrite(&type,sizeof(int),1,fid); 113 115 fwrite(&size,sizeof(int),1,fid); 114 fwrite(&this->value,size*sizeof(double),1,fid); 116 passiveDouble=reCast<IssmPDouble>(this->value); 117 fwrite(&passiveDouble,size*sizeof(IssmPDouble),1,fid); 115 118 116 119 } 117 /*}}} 1*/118 /*FUNCTION DoubleExternalResult::GetResultName{{{ 1*/120 /*}}}*/ 121 /*FUNCTION DoubleExternalResult::GetResultName{{{*/ 119 122 void DoubleExternalResult::GetResultName(char** pname){ 120 123 EnumToStringx(pname,this->enum_type); 121 124 } 122 125 /*}}}*/ 123 /*FUNCTION DoubleExternalResult::GetStep{{{ 1*/126 /*FUNCTION DoubleExternalResult::GetStep{{{*/ 124 127 int DoubleExternalResult::GetStep(void){ 125 128
Note:
See TracChangeset
for help on using the changeset viewer.