GemaLuaCoreLib
The GeMA Lua Core library
gmLuaModelData.h
Go to the documentation of this file.
1 /************************************************************************
2 **
3 ** Copyright (C) 2014 by Carlos Augusto Teixera Mendes
4 ** All rights reserved.
5 **
6 ** This file is part of the "GeMA" software. It's use should respect
7 ** the terms in the license agreement that can be found together
8 ** with this source code.
9 ** It is provided AS IS, with NO WARRANTY OF ANY KIND,
10 ** INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR
11 ** A PARTICULAR PURPOSE.
12 **
13 ************************************************************************/
14 
24 #ifndef _GEMALUA_MODEL_DATA_H_
25 #define _GEMALUA_MODEL_DATA_H_
26 
27 #include "gmLuaObject.h"
28 
29 class GmModelData;
30 
32 class GML_API_EXPORT GmLuaModelData: public GmLuaObject
33 {
34 public:
35  GmLuaModelData(GmModelData* data, const GmLogCategory& logger);
36  virtual ~GmLuaModelData();
37 
38  // See comments on the base class
39  virtual const char* typeName() const { return "modelData"; }
40 
41  virtual void fillMetatable(lua_State* L, int index);
42 
44  virtual void* getClassMetatableID() { static int classID = 0; return &classID; }
45 
46 private:
47  int mesh (lua_State* L);
48  int boundaryCondition (lua_State* L);
49  int contactBoundaryCondition(lua_State* L);
50  int propertySet (lua_State* L);
51  int spatialIndex (lua_State* L);
52  int discontinuitySet (lua_State* L);
53 
55 };
56 
57 #endif
A proxy class to export GmModelData methods to the Lua environment.
Definition: gmLuaModelData.h:32
Declaration of the GmLuaObject class.
virtual const char * typeName() const
Returns the object type as will be stored in the object metatable.
Definition: gmLuaModelData.h:39
GmModelData * _data
The ModelData 'wrapped' by this proxy object.
Definition: gmLuaModelData.h:54
virtual void * getClassMetatableID()
Returns an unique identifier to identify an user object as a GmLuaModelData object.
Definition: gmLuaModelData.h:44
virtual void fillMetatable(lua_State *L, int index)=0
Function called by populateMetatable() to fill the metatable with exported methods by derived classes...
A proxy class to export object methods to the Lua environment.
Definition: gmLuaObject.h:35