XC Open source finite element analysis program
MEDFieldInfo.h
1 //----------------------------------------------------------------------------
2 // XC program; finite element analysis code
3 // for structural analysis and design.
4 //
5 // Copyright (C) Luis Claudio PĂ©rez Tato
6 //
7 // XC is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by
9 // the Free Software Foundation, either version 3 of the License, or
10 // (at your option) any later version.
11 //
12 // This software is distributed in the hope that it will be useful, but
13 // WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU General Public License for more details.
16 //
17 //
18 // You should have received a copy of the GNU General Public License
19 // along with this program.
20 // If not, see <http://www.gnu.org/licenses/>.
21 //----------------------------------------------------------------------------
22 //MEDFieldInfo.h
23 
24 #ifndef MEDFIELDINFO_H
25 #define MEDFIELDINFO_H
26 
27 #include "MEDGroupInfo.h"
28 #include "post_process/FieldInfo.h"
29 
30 namespace XC {
31 
32 class MEDGaussModel;
33 class GaussModel;
34 
36 //
38 class MEDFieldInfo: public MEDObject
39  {
40  const FieldInfo &field_info;
41  protected:
42  friend class MEDMeshing;
44 
45  const MEDGroupInfo &getGrupo(void) const;
46  MEDMEM::GROUP *getGrupoMED(void) const;
47 
48  public:
49  inline virtual ~MEDFieldInfo(void)
50  {}
51  inline const FieldInfo &getXCFieldInfo(void) const
52  { return field_info; }
53  inline const std::string *getComponentNamesPtr(void) const
54  { return &(field_info.getComponentNames()[0]); }
55  inline const std::string *getComponentDescriptionsPtr(void) const
56  { return &(field_info.getComponentDescriptions()[0]); }
57  inline const std::string *getComponentUnitsPtr(void) const
58  { return &(field_info.getComponentUnits()[0]); }
59 
60  virtual void defineGaussModels(const Set &)= 0;
61 
62  virtual void write(const std::string &) const= 0;
63  };
64 } // end of XC namespace
65 #endif
Information about a field defined over a set.
Definition: FieldInfo.h:39
Information about node and element sets.
Definition: MEDGroupInfo.h:36
Envoltorio para el objeto MESHING de MED.
Definition: MEDMeshing.h:45
Base class for MED objects.
Definition: MEDObject.h:39
const MEDGroupInfo & getGrupo(void) const
Returns the group over which the field is defined.
Definition: MEDFieldInfo.cc:38
Information about a field defined over a mesh subset.
Definition: MEDFieldInfo.h:38
Object set.
Definition: Set.h:63
================================================================================
Definition: ContinuaReprComponent.h:34
MEDFieldInfo(const FieldInfo &, MEDGroupInfo *)
Constructor.
Definition: MEDFieldInfo.cc:33