hp2FEM
0.1
|
00001 #ifndef _BUILTINTABLE_H_ 00002 #define _BUILTINTABLE_H_ 00003 //============================================================== 00004 // File : BuiltInTable.h 00005 // Generated : 22 Fev 2011 18:08 00006 // by : Gilberto Luis 00007 // Company : UNICAMP 00008 //-------------------------------------------------------------- 00009 // !! Note: This file was generated by Metamill 5.0. 00010 // !! Make changes only inside user blocks. 00011 // !! Full code markers generated. 00012 //============================================================== 00013 00014 //#UBLK-BEG-HEADERH 00015 //============================================================== 00016 // Description : 00017 //-------------------------------------------------------------- 00018 // Author : Gilberto Luis 00019 // Created : 22 Fev 2011 00020 //-------------------------------------------------------------- 00021 // Change history : 00022 // 22 Fev 2011 (Gilberto Luis) Initial version generated 00023 // 00024 //============================================================== 00025 //#UBLK-END-HEADERH 00026 00027 00028 template <class Type1, 00029 class Type2> 00030 class BuiltInTable 00031 { 00032 //#UBLK-BEG-CLASSDEF mm:2799887c-3ec4-11e0-8408-f25596bc45f2 00033 //#UBLK-END-CLASSDEF 00034 00035 public: 00036 00040 // METHOD=mm:249e9caf-3ec4-11e0-8408-f25596bc45f2 00041 BuiltInTable(); 00042 00046 // METHOD=mm:249e9cb0-3ec4-11e0-8408-f25596bc45f2 00047 BuiltInTable(long ArraySize, Type* Elements = 0); 00048 00052 // METHOD=mm:249e9cb1-3ec4-11e0-8408-f25596bc45f2 00053 BuiltInTable(BuiltInTable<Type>& Instance); 00054 00058 // METHOD=mm:249e9cb6-3ec4-11e0-8408-f25596bc45f2 00059 ~BuiltInTable(); 00060 00065 // METHOD=mm:249e9cb7-3ec4-11e0-8408-f25596bc45f2 00066 BuiltInTable<Type>& operator=(BuiltInTable<Type>& Instance); 00067 00071 // METHOD=mm:249e9cb9-3ec4-11e0-8408-f25596bc45f2 00072 operator Type * const(); 00073 00077 // METHOD=mm:249e9cba-3ec4-11e0-8408-f25596bc45f2 00078 long GetSize(); 00079 00083 // METHOD=mm:249e9cbb-3ec4-11e0-8408-f25596bc45f2 00084 void SetSize(long BuiltInTableSize = 0); 00085 00089 // METHOD=mm:249e9cc0-3ec4-11e0-8408-f25596bc45f2 00090 void Resize(long NewSize); 00091 00095 // METHOD=mm:249e9cc1-3ec4-11e0-8408-f25596bc45f2 00096 void Print(FILE* File, char* Message = ""); 00097 00101 // METHOD=mm:249e9cc2-3ec4-11e0-8408-f25596bc45f2 00102 void Save(FILE* File); 00103 00107 // METHOD=mm:249e9cc3-3ec4-11e0-8408-f25596bc45f2 00108 void Save(char* TabName, int Version, char* Filename); 00109 00113 // METHOD=mm:249e9cc4-3ec4-11e0-8408-f25596bc45f2 00114 void Restore(FILE* File); 00115 00119 // METHOD=mm:249e9cc5-3ec4-11e0-8408-f25596bc45f2 00120 void Restore(char* TabName, int Version, char* Filename); 00121 00125 // METHOD=mm:249e9cca-3ec4-11e0-8408-f25596bc45f2 00126 void Free(); 00127 00128 00129 protected: 00130 00131 private: 00132 00136 // METHOD=mm:249e9ccb-3ec4-11e0-8408-f25596bc45f2 00137 void Alloc(long ArraySize = 0, Type* PArray = 0); 00138 00139 00140 // attr=mm:89f3a60f-3ec6-11e0-8408-f25596bc45f2 00141 Array<Type1> DataArray; 00142 // attr=mm:8eb850e1-3ec6-11e0-8408-f25596bc45f2 00143 Array<Type2> IndecesArray; 00144 // attr=mm:e191f489-3ec6-11e0-8408-f25596bc45f2 00145 unsigned long SizeData; 00146 // attr=mm:f373b403-3ec6-11e0-8408-f25596bc45f2 00147 unsigned long SizeIndices; 00148 00149 00150 //#UBLK-BEG-CLASSMEMB mm:2799887c-3ec4-11e0-8408-f25596bc45f2 00151 //#UBLK-END-CLASSMEMB 00152 }; 00153 00154 00155 00156 // template implementation 00157 #include "BuiltInTable.cpp" 00158 00159 00160 //#UBLK-BEG-GLOBALH 00161 //#UBLK-END-GLOBALH 00162 00163 #endif // _BUILTINTABLE_H_ 00164