hp2FEM  0.1
include/loadsets/LoadSet.h
00001 #ifndef _LOADSET_H_
00002 #define _LOADSET_H_
00003 // ---------------------------------------------
00004 // company   : 
00005 // user      : 
00006 // date      : 22 Mar 2015 17:24
00007 // file      : LoadSet.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     : 20 Jun 2011
00019 //--------------------------------------------------------------
00020 // Change history : 
00021 //   20 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/Array.h"
00048 #include "enumerations/Entity_E.h"
00049 #include "loadsets/LoadIntensity.h"
00050 #include "model/DOFs.h"
00051 
00052 
00060 class LoadSet
00061 {
00062 //#UBLK-BEG-CLASSDEF mm:c9e8c418-f8aa-11df-81a2-dbfec3d2969c
00063 //#UBLK-END-CLASSDEF
00064 
00065  public:
00066 
00067    // METHOD=mm:b89fba15-f8aa-11df-81a2-dbfec3d2969c
00068    LoadSet();
00069 
00070    // METHOD=mm:c60f75f1-f8b7-11df-81a2-dbfec3d2969c
00071    LoadSet(unsigned long LoadSetNum);
00072 
00073    // METHOD=mm:1ea10d5c-02fc-11e0-89cb-b0660132333d
00074    LoadSet(LoadSet& Instance);
00075 
00076    // METHOD=mm:1ea116b3-02fc-11e0-89cb-b0660132333d
00077    ~LoadSet();
00078 
00079    // METHOD=mm:cb135e16-bcfc-41e3-a4ee-00cde44ed807
00080    void Free();
00081 
00082    // METHOD=mm:f78e714e-6443-11e0-8ed0-898c5abdfd18
00083    LoadSet& operator=(LoadSet& Instance);
00084 
00085    // METHOD=mm:b89fba18-f8aa-11df-81a2-dbfec3d2969c
00086    unsigned long GetNumberLoadedNodes();
00087 
00088    // METHOD=mm:b89fbab3-f8aa-11df-81a2-dbfec3d2969c
00089    unsigned long GetNumberLoadedEdges();
00090 
00091    // METHOD=mm:7746bf10-dfd8-4a74-aa33-7cac95bd09b7
00092    unsigned long GetNumberContactEdges();
00093 
00094    // METHOD=mm:144b8174-a139-4b90-adb5-76f7eb6568a1
00095    unsigned long GetNumberTargetEdges();
00096 
00097    // METHOD=mm:b89fbab5-f8aa-11df-81a2-dbfec3d2969c
00098    unsigned long GetNumberLoadedFaces();
00099 
00100    // METHOD=mm:11131e0e-9c2e-11e0-8175-f7be0f4756e7
00101    unsigned long GetNumberLoadedBodies();
00102 
00103    // METHOD=mm:b89fbaae-f8aa-11df-81a2-dbfec3d2969c
00104    unsigned long GetNumberLoadedKeypoints();
00105 
00106    // METHOD=mm:b89fbab1-f8aa-11df-81a2-dbfec3d2969c
00107    unsigned long GetNumberLoadedLines();
00108 
00109    // METHOD=mm:b89fbab7-f8aa-11df-81a2-dbfec3d2969c
00110    unsigned long GetNumberLoadedSurfaces();
00111 
00112    // METHOD=mm:b89fbb46-f8aa-11df-81a2-dbfec3d2969c
00113    unsigned long GetNumberLoadedVolumes();
00114 
00115    // METHOD=mm:260c44f5-6444-11e0-8ed0-898c5abdfd18
00116    unsigned long GetNumberLoads(Entity_E Entity);
00117 
00118    // METHOD=mm:6cfa3b8e-6444-11e0-8ed0-898c5abdfd18
00119    unsigned long GetNumberPresureLoads(Entity_E Entity);
00120 
00121    // METHOD=mm:12fe3b57-f8ce-11df-81a2-dbfec3d2969c
00122    unsigned long GetNumberPressureEdges();
00123 
00124    // METHOD=mm:2dd09e25-f8ce-11df-81a2-dbfec3d2969c
00125    unsigned long GetNumberPressureFaces();
00126 
00127    // METHOD=mm:d76366f3-f8cd-11df-81a2-dbfec3d2969c
00128    unsigned long GetNumberPressureLines();
00129 
00130    // METHOD=mm:77b99401-f8ce-11df-81a2-dbfec3d2969c
00131    unsigned long GetNumberPressureSurfaces();
00132 
00133    // METHOD=mm:b89fbb47-f8aa-11df-81a2-dbfec3d2969c
00134    Array<LoadIntensity>& GetLoadNodes();
00135 
00136    // METHOD=mm:b89fbb4b-f8aa-11df-81a2-dbfec3d2969c
00137    Array<LoadIntensity>& GetLoadEdges();
00138 
00139    // METHOD=mm:ebfe9c58-cbcd-4e81-b5c5-0fd6eaa0207f
00140    Array<LoadIntensity>& GetContactEdges();
00141 
00142    // METHOD=mm:8ef2ebb5-9a55-40da-a53e-00834cd0192e
00143    Array<LoadIntensity>& GetTargetEdges();
00144 
00145    // METHOD=mm:b89fbbe4-f8aa-11df-81a2-dbfec3d2969c
00146    Array<LoadIntensity>& GetLoadFaces();
00147 
00148    // METHOD=mm:b89fbbe8-f8aa-11df-81a2-dbfec3d2969c
00149    Array<LoadIntensity>& GetLoadBodies();
00150 
00151    // METHOD=mm:b89fbb49-f8aa-11df-81a2-dbfec3d2969c
00152    Array<LoadIntensity>& GetLoadKeypoints();
00153 
00154    // METHOD=mm:b89fbb4d-f8aa-11df-81a2-dbfec3d2969c
00155    Array<LoadIntensity>& GetLoadLines();
00156 
00157    // METHOD=mm:b89fbbe6-f8aa-11df-81a2-dbfec3d2969c
00158    Array<LoadIntensity>& GetLoadSurfaces();
00159 
00160    // METHOD=mm:b89fbbea-f8aa-11df-81a2-dbfec3d2969c
00161    Array<LoadIntensity>& GetLoadVolumes();
00162 
00163    // METHOD=mm:83a096e4-6444-11e0-8ed0-898c5abdfd18
00164    Array<LoadIntensity>& GetLoads(Entity_E Entity);
00165 
00166    // METHOD=mm:70df5859-f8cf-11df-81a2-dbfec3d2969c
00167    Array<LoadIntensity>& GetPressureEdges();
00168 
00169    // METHOD=mm:c3b8f0b7-f8cf-11df-81a2-dbfec3d2969c
00170    Array<LoadIntensity>& GetPressureFaces();
00171 
00172    // METHOD=mm:aa17bf2b-f8cf-11df-81a2-dbfec3d2969c
00173    Array<LoadIntensity>& GetPressureLines();
00174 
00175    // METHOD=mm:d59a9281-f8cf-11df-81a2-dbfec3d2969c
00176    Array<LoadIntensity>& GetPressureSurfaces();
00177 
00178    // METHOD=mm:c793969e-6444-11e0-8ed0-898c5abdfd18
00179    Array<LoadIntensity>& GetPresureLoads(Entity_E Entity);
00180 
00181    // METHOD=mm:b89fba16-f8aa-11df-81a2-dbfec3d2969c
00182    void Read(FILE* DEFFile, unsigned long LoadSetNum, DOFs& DofNames);
00183 
00184    // METHOD=mm:a5e5c855-6443-11e0-8ed0-898c5abdfd18
00185    void Print(FILE* File, char* Message = "");
00186 
00187 
00188    // asse=mm:ecbac24d-3411-408b-886a-81ce38455d22
00189    LoadIntensity * theLoadIntensity;
00190 
00191 
00192  protected:
00193 
00197    // attr=mm:b89fb96f-f8aa-11df-81a2-dbfec3d2969c
00198    unsigned long LoadSetNumber;
00199 
00203    // attr=mm:b89fb978-f8aa-11df-81a2-dbfec3d2969c
00204    Array<LoadIntensity> LoadedNodes;
00205 
00209    // attr=mm:b89fba0e-f8aa-11df-81a2-dbfec3d2969c
00210    Array<LoadIntensity> LoadedKeyPoints;
00211 
00215    // attr=mm:b89fba0f-f8aa-11df-81a2-dbfec3d2969c
00216    Array<LoadIntensity> LoadedEdges;
00217 
00221    // attr=mm:743184ff-0a5b-4bf6-be5c-4bcd2a1fd291
00222    Array<LoadIntensity> ContactEdges;
00223 
00227    // attr=mm:64cea601-db15-4994-b3f1-2b30aa380bcb
00228    Array<LoadIntensity> TargetEdges;
00229 
00233    // attr=mm:b89fba10-f8aa-11df-81a2-dbfec3d2969c
00234    Array<LoadIntensity> LoadedLines;
00235 
00239    // attr=mm:b89fba11-f8aa-11df-81a2-dbfec3d2969c
00240    Array<LoadIntensity> LoadedFaces;
00241 
00245    // attr=mm:4f5bef3d-9c2d-11e0-8175-f7be0f4756e7
00246    Array<LoadIntensity> LoadedBodies;
00247 
00251    // attr=mm:b89fba12-f8aa-11df-81a2-dbfec3d2969c
00252    Array<LoadIntensity> LoadedSurfaces;
00253 
00257    // attr=mm:b89fba14-f8aa-11df-81a2-dbfec3d2969c
00258    Array<LoadIntensity> LoadedVolumes;
00259 
00263    // attr=mm:400ecd77-5f0e-11e0-9992-cbf6ad810c83
00264    Array<LoadIntensity> PressEdges;
00265 
00269    // attr=mm:6d3fbf85-f8b7-11df-81a2-dbfec3d2969c
00270    Array<LoadIntensity> PressLines;
00271 
00275    // attr=mm:86e10499-f8b7-11df-81a2-dbfec3d2969c
00276    Array<LoadIntensity> PressFaces;
00277 
00281    // attr=mm:93fdfae7-f8b7-11df-81a2-dbfec3d2969c
00282    Array<LoadIntensity> PressSurfaces;
00283 
00284 
00285  private:
00286 
00287 //#UBLK-BEG-CLASSMEMB mm:c9e8c418-f8aa-11df-81a2-dbfec3d2969c
00288 //#UBLK-END-CLASSMEMB
00289 };
00290 
00291 //#UBLK-BEG-GLOBALH
00292 //*** Removed methods: 22 Jun 2011 11:01
00293 //---
00294 //uuid=mm:b89fba17-f8aa-11df-81a2-dbfec3d2969c
00295 //   void SetNumberLoadedNodes(unsigned long NumberLoadNodes);
00296 //---
00297 //uuid=mm:b89fbaaf-f8aa-11df-81a2-dbfec3d2969c
00298 //   void SetNumberLoadedKeypoints(unsigned long NumberLoadKeypoints);
00299 //---
00300 //uuid=mm:b89fbab2-f8aa-11df-81a2-dbfec3d2969c
00301 //   void SetNumberLoadedEdges(unsigned long NumberLoadEdges);
00302 //---
00303 //uuid=mm:b89fbab4-f8aa-11df-81a2-dbfec3d2969c
00304 //   void SetNumberLoadedFaces(unsigned long NumberLoadFaces);
00305 //---
00306 //uuid=mm:b89fbab8-f8aa-11df-81a2-dbfec3d2969c
00307 //   void SetNumberLoadedBodies(unsigned long NumberLoadElements);
00308 //---
00309 //uuid=mm:b89fbab0-f8aa-11df-81a2-dbfec3d2969c
00310 //   void SetNumberLoadedLines(unsigned long NumberLoadLines);
00311 //---
00312 //uuid=mm:b89fbab6-f8aa-11df-81a2-dbfec3d2969c
00313 //   void SetNumberLoadedSurfaces(unsigned long NumberLoadSurfaces);
00314 //---
00315 //uuid=mm:b89fbb45-f8aa-11df-81a2-dbfec3d2969c
00316 //   void SetNumberLoadedVolumes(unsigned long NumberLoadVolumes);
00317 //---
00318 //uuid=mm:eb0ec27a-f8cd-11df-81a2-dbfec3d2969c
00319 //   void SetNumberPressureEdges(unsigned long NumberPressureEdges);
00320 //---
00321 //uuid=mm:21e4e068-f8ce-11df-81a2-dbfec3d2969c
00322 //   void SetNumberPressureFaces(unsigned long NumberPressureFaces);
00323 //---
00324 //uuid=mm:bac73d9a-f8cd-11df-81a2-dbfec3d2969c
00325 //   void SetNumberPressureLines(unsigned long NumberPressureLines);
00326 //---
00327 //uuid=mm:55bff918-f8ce-11df-81a2-dbfec3d2969c
00328 //   void SetNumberPressureSurfaces(unsigned long NumberPressureSurfaces);
00329 
00330 //*** Removed methods: 04 Apr 2012 14:50
00331 //---
00332 //uuid=mm:b89fbb44-f8aa-11df-81a2-dbfec3d2969c
00333 //   unsigned long GetNumberLoadedElements();
00334 //---
00335 //uuid=mm:7fda2aa6-f251-4bef-80c4-1bd0d81589f6
00336 //   Array<LoadIntensity>& GetLoadElements();
00337 
00338 //#UBLK-END-GLOBALH
00339 
00340 
00341 #endif // _LOADSET_H_
 All Classes Files Functions Variables Typedefs Friends Defines