hp2FEM
0.1
|
00001 #ifndef _GEOMETRICPROPERTIES_H_ 00002 #define _GEOMETRICPROPERTIES_H_ 00003 // --------------------------------------------- 00004 // company : 00005 // user : 00006 // date : 22 Mar 2015 17:22 00007 // file : GeometricProperties.h 00008 // markers : Full 00009 // language : C++ 00010 // generator : Metamill 6.0 00011 // --------------------------------------------- 00012 00013 //#UBLK-BEG-HEADERH 00014 //============================================================== 00015 // Description : 00016 //-------------------------------------------------------------- 00017 // Author : Gilberto Luis 00018 // Created : 09 Jun 2011 00019 //-------------------------------------------------------------- 00020 // Change history : 00021 // 09 Jun 2011 (Gilberto Luis) Initial version generated 00022 // 00023 //============================================================== 00024 //#UBLK-END-HEADERH 00025 00026 /*================================================================================================= 00027 = = 00028 = Copyright 2010-2015 Marco Lucio Bittencourt / Fabiano Fernandes Bargos = 00029 = Gilberto Luis Valente / Jorge Luis Suzuki / Allan Patrick Cordeiro Dias = 00030 = = 00031 = Licensed under the Apache License, Version 2.0 (the "License"); = 00032 = you may not use this file except in compliance with the License. = 00033 = You may obtain a copy of the License at = 00034 = = 00035 = http://www.apache.org/licenses/LICENSE-2.0 = 00036 = = 00037 = Unless required by applicable law or agreed to in writing, software = 00038 = distributed under the License is distributed on an "AS IS" BASIS, = 00039 = WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. = 00040 = See the License for the specific language governing permissions and = 00041 = limitations under the License. = 00042 = = 00043 =================================================================================================*/ 00044 00045 00046 #include <cstdio> 00047 #include "ds/BuiltInArray.h" 00048 00049 00056 class GeometricProperties 00057 { 00058 //#UBLK-BEG-CLASSDEF mm:079de448-f650-11df-817b-b59fee0c7729 00059 //#UBLK-END-CLASSDEF 00060 00061 public: 00062 00063 // METHOD=mm:7166e599-02d4-11e0-89cb-b0660132333d 00064 GeometricProperties(); 00065 00066 // METHOD=mm:e9d069e7-f64f-11df-817b-b59fee0c7729 00067 GeometricProperties(unsigned long NumberElements, unsigned long NumberGeometricProperties, BuiltInArray<double>& Properties); 00068 00069 // METHOD=mm:87759fb3-02d6-11e0-89cb-b0660132333d 00070 GeometricProperties(GeometricProperties& Instance); 00071 00072 // METHOD=mm:98bebb33-02d6-11e0-89cb-b0660132333d 00073 ~GeometricProperties(); 00074 00075 // METHOD=mm:27ab1606-9915-11e0-8faf-d83ab2ff7587 00076 GeometricProperties& operator=(GeometricProperties& Instance); 00077 00078 // METHOD=mm:e9d069e8-f64f-11df-817b-b59fee0c7729 00079 void SetProperties(unsigned long NumberProperties, unsigned long NumberElements, BuiltInArray<double>& Properties); 00080 00081 // METHOD=mm:e9d069e9-f64f-11df-817b-b59fee0c7729 00082 double* const GetProperties(unsigned long ElementNumber, unsigned long& NumberProperties); 00083 00084 // METHOD=mm:e9d069ea-f64f-11df-817b-b59fee0c7729 00085 void Save(FILE* File); 00086 00087 // METHOD=mm:e9d069eb-f64f-11df-817b-b59fee0c7729 00088 void Restore(FILE* File); 00089 00090 // METHOD=mm:e9d069ec-f64f-11df-817b-b59fee0c7729 00091 void Free(); 00092 00093 // METHOD=mm:e9d069ed-f64f-11df-817b-b59fee0c7729 00094 void Read(FILE* DEFFile); 00095 00096 // METHOD=mm:e9d069ee-f64f-11df-817b-b59fee0c7729 00097 void Print(FILE* File); 00098 00099 00100 protected: 00101 00105 // attr=mm:e9d06959-f64f-11df-817b-b59fee0c7729 00106 unsigned long NumElem; 00107 00111 // attr=mm:e9d0695a-f64f-11df-817b-b59fee0c7729 00112 unsigned long NumGeoProp; 00113 00117 // attr=mm:e9d069e6-f64f-11df-817b-b59fee0c7729 00118 BuiltInArray<double> Values; 00119 00120 00121 private: 00122 00123 //#UBLK-BEG-CLASSMEMB mm:079de448-f650-11df-817b-b59fee0c7729 00124 //#UBLK-END-CLASSMEMB 00125 }; 00126 00127 //#UBLK-BEG-GLOBALH 00128 //#UBLK-END-GLOBALH 00129 00130 00131 #endif // _GEOMETRICPROPERTIES_H_