VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
propertySetter.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
7 
8 #pragma once
9 
10 #include <vrfLua/vrfLuaDefines.h>
11 #include <luabind/luabind.hpp>
14 
15 class DtString;
16 class DtRwProperties;
17 
20 namespace DtPropertySetter
21 {
22 
25  DT_DLL_vrfLua bool setPropertyFromLua(const DtString& propertyName,
26  const luabind::object& inProp, DtRwProperties* outProps);
27 
31  DT_DLL_vrfLua bool setOrAddPropertyFromLua(const DtString& propertyName,
32  const luabind::object& inProp, DtRwProperties* outProps);
33 
37  DT_DLL_vrfLua bool setPropertyListItemFromLua(const DtString& propertyName,
38  const luabind::object& keyValues, const luabind::object& inProp,
39  DtRwProperties* outProps);
40 
44  DT_DLL_vrfLua bool setPropertyListItemFromLua(const DtString& propertyName,
45  int index, const luabind::object& inProp,
46  DtRwProperties* outProps);
47 
51  DT_DLL_vrfLua bool setPropertyMapItemFromLua(const DtString& propertyName,
52  const luabind::object& keyValue, const luabind::object& inProp,
53  DtRwProperties* outProps);
54 
57  DT_DLL_vrfLua bool setLuaFromProperty(lua_State* L, const DtString& propertyName,
58  const DtRwProperties* inProps, luabind::object& outProp);
59 
63  DT_DLL_vrfLua bool setLuaListItemFromProperty(lua_State* L, const DtString& propertyName,
64  const luabind::object& keyValues, const DtRwProperties* inProps,
65  luabind::object& outItem, int& index);
66 
70  DT_DLL_vrfLua bool setLuaListItemFromProperty(lua_State* L, const DtString& propertyName,
71  int index, const DtRwProperties* inProps,
72  luabind::object& outItem);
73 
77  DT_DLL_vrfLua bool setLuaMapItemFromProperty(lua_State* L, const DtString& propertyName,
78  const luabind::object& keyValue, const DtRwProperties* inProps,
79  luabind::object& outItem);
80 
83  DT_DLL_vrfLua bool setPropertyFromLua(const luabind::object& inProp, DtPropertyInterface* outProp);
84 
87  DT_DLL_vrfLua bool setLuaFromProperty(lua_State* L,
88  const DtPropertyInterface* inProps, luabind::object& outProp);
89 
91  typedef bool (*luaToPropFnc)(const DtString& propertyName, luabind::object const& inProp,
92  DtPropertyInterface* outProp);
93 
95 
96  DT_DLL_vrfLua bool setStringPropFromLua(const DtString& propertyName, luabind::object const& inProp,
97  DtPropertyInterface* outProp);
98 
99  DT_DLL_vrfLua bool setUUIDPropFromLua(const DtString& propertyName, luabind::object const& inProp,
100  DtPropertyInterface* outProp);
101 
102  DT_DLL_vrfLua bool setEntityTypePropFromLua(const DtString& propertyName, luabind::object const& inProp,
103  DtPropertyInterface* outProp);
104 
105  DT_DLL_vrfLua bool setObjectTypePropFromLua(const DtString& propertyName, luabind::object const& inProp,
106  DtPropertyInterface* outProp);
107 
108  DT_DLL_vrfLua bool setVerticesPropFromLua(const DtString& propertyName, luabind::object const& inProp,
109  DtPropertyInterface* outProp);
110 
111  DT_DLL_vrfLua bool setOffsetVerticesPropFromLua(const DtString& propertyName, luabind::object const& inProp,
112  DtPropertyInterface* outProp);
113 
114  DT_DLL_vrfLua bool setIntPropFromLua(const DtString& propertyName, luabind::object const& inProp,
115  DtPropertyInterface* outProp);
116 
117  DT_DLL_vrfLua bool setDoublePropFromLua(const DtString& propertyName, luabind::object const& inProp,
118  DtPropertyInterface* outProp);
119 
120  DT_DLL_vrfLua bool setBoolPropFromLua(const DtString& propertyName, luabind::object const& inProp,
121  DtPropertyInterface* outProp);
122 
123  DT_DLL_vrfLua bool setVectorPropFromLua(const DtString& propertyName, luabind::object const& inProp,
124  DtPropertyInterface* outProp);
125 
126  DT_DLL_vrfLua bool setStructPropFromLua(const DtString& propertyName, luabind::object const& inProp,
127  DtPropertyInterface* outProp);
128 
129  DT_DLL_vrfLua bool setListPropFromLua(const DtString& propertyName, luabind::object const& inProp,
130  DtPropertyInterface* outProp);
132 
133 
135  typedef bool (*propToLuaFnc)(lua_State* L, const DtString& propertyName,
136  const DtPropertyInterface* inProp, luabind::object& outProp);
137 
139 
140  DT_DLL_vrfLua bool setLuaFromStringProp(lua_State* L, const DtString& propertyName,
141  const DtPropertyInterface* inProp, luabind::object& outProp);
142 
143  DT_DLL_vrfLua bool setLuaFromEntityTypeProp(lua_State* L, const DtString& propertyName,
144  const DtPropertyInterface* inProp, luabind::object& outProp);
145 
146  DT_DLL_vrfLua bool setLuaFromObjectTypeProp(lua_State* L, const DtString& propertyName,
147  const DtPropertyInterface* inProp, luabind::object& outProp);
148 
149  DT_DLL_vrfLua bool setLuaFromVerticesProp(lua_State* L, const DtString& propertyName,
150  const DtPropertyInterface* inProp, luabind::object& outProp);
151 
152  DT_DLL_vrfLua bool setLuaFromOffsetVerticesProp(lua_State* L, const DtString& propertyName,
153  const DtPropertyInterface* inProp, luabind::object& outProp);
154 
155  DT_DLL_vrfLua bool setLuaFromIntProp(lua_State* L, const DtString& propertyName,
156  const DtPropertyInterface* inProp, luabind::object& outProp);
157 
158  DT_DLL_vrfLua bool setLuaFromDoubleProp(lua_State* L, const DtString& propertyName,
159  const DtPropertyInterface* inProp, luabind::object& outProp);
160 
161  DT_DLL_vrfLua bool setLuaFromBoolProp(lua_State* L, const DtString& propertyName,
162  const DtPropertyInterface* inProp, luabind::object& outProp);
163 
164  DT_DLL_vrfLua bool setLuaFromVectorProp(lua_State* L, const DtString& propertyName,
165  const DtPropertyInterface* inProp, luabind::object& outProp);
166 
167  DT_DLL_vrfLua bool setLuaFromStructProp(lua_State* L, const DtString& propertyName,
168  const DtPropertyInterface* inProp, luabind::object& outProp);
169 
170  DT_DLL_vrfLua bool setLuaFromListProp(lua_State* L, const DtString& propertyName,
171  const DtPropertyInterface* inProp, luabind::object& outProp);
173 
175  typedef DtPropertyInterface* (*luaToPropCreatorFnc)(const DtString& propertyName, luabind::object const& inProp,
176  DtRwProperties* parent);
177 
179 
180  DT_DLL_vrfLua DtPropertyInterface* createStringPropFromLua(const DtString& propertyName, luabind::object const& inProp,
181  DtRwProperties* parent);
182 
183  DT_DLL_vrfLua DtPropertyInterface* createDoublePropFromLua(const DtString& propertyName, luabind::object const& inProp,
184  DtRwProperties* parent);
185 
186  DT_DLL_vrfLua DtPropertyInterface* createBoolPropFromLua(const DtString& propertyName, luabind::object const& inProp,
187  DtRwProperties* parent);
188 
189  DT_DLL_vrfLua DtPropertyInterface* createTablePropFromLua(const DtString& propertyName, luabind::object const& inProp,
190  DtRwProperties* parent);
191 
192  DT_DLL_vrfLua DtPropertyInterface* createCustomPropFromLua(const DtString& propertyName, luabind::object const& inProp,
193  DtRwProperties* parent);
194 
195  DT_DLL_vrfLua DtPropertyInterface* createStructPropFromLua(const DtString& propertyName, luabind::object const& inProp,
196  DtRwProperties* parent);
197 
198  DT_DLL_vrfLua DtPropertyInterface* createListPropFromLua(const DtString& propertyName, luabind::object const& inProp,
199  DtRwProperties* parent);
200 
201  DT_DLL_vrfLua DtPropertyInterface* createMapPropFromLua(const DtString& propertyName, luabind::object const& inProp,
202  DtRwProperties* parent);
204 
208 
210  const luabind::object& keyValues, int& index);
212  const luabind::object& keyValues, int& index);
214 
219  const luabind::object& keyValues, int& index);
220 
225  const luabind::object& keyValues, int& index);
226 
230  const luabind::object& keyValue);
231 
234 
236  const luabind::object& keyValue);
238  const luabind::object& keyValue);
240 
241  typedef std::map<DtString, luaToPropFnc> DtPropFromLuaFcnMap;
244 
245  typedef std::map<DtString, propToLuaFnc> DtLuaFromPropFcnMap;
248 
249  typedef std::map<int, luaToPropCreatorFnc> DtPropFromLuaCreatorFcnMap;
252 };
253 
DT_DLL_vrfLua bool setLuaFromStructProp(lua_State *L, const DtString &propertyName, const DtPropertyInterface *inProp, luabind::object &outProp)
Property-to-Lua conversion functions.
DT_DLL_vrfLua bool setUUIDPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtPropertyInterface *outProp)
Lua-to-Property conversion functions.
DT_DLL_vrfLua bool setLuaListItemFromProperty(lua_State *L, const DtString &propertyName, const luabind::object &keyValues, const DtRwProperties *inProps, luabind::object &outItem, int &index)
Finds the item in the named list property that matches the specified keyValues and sets outItem with ...
DT_DLL_vrfLua const DtPropertyInterface * findConstMapItem(const DtRwPropertiesMap *propMap, const luabind::object &keyValue)
Find the item in the map that matches the given key defined in the keyValue Lua object.
DT_DLL_vrfLua DtPropFromLuaFcnMap & propertyFromLuaFcnMap()
The Lua-to-Property by type.
bool(* luaToPropFnc)(const DtString &propertyName, luabind::object const &inProp, DtPropertyInterface *outProp)
Function signature for Lua-to-property conversion functions.
Definition: propertySetter.h:91
DT_DLL_vrfLua bool setIntPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtPropertyInterface *outProp)
Lua-to-Property conversion functions.
DT_DLL_vrfLua DtPropertyInterface * createStringPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtRwProperties *parent)
Lua-to-Property creation functions.
DT_DLL_vrfLua DtPropertyInterface * createMapPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtRwProperties *parent)
Lua-to-Property creation functions.
DT_DLL_vrfLua DtLuaFromPropFcnMap & luaFromPropertyFcnMap()
The Property-to-Lua by type.
DT_DLL_vrfLua bool setLuaFromProperty(lua_State *L, const DtString &propertyName, const DtRwProperties *inProps, luabind::object &outProp)
Sets the named Lua property from a property. Returns true if successful.
DT_DLL_vrfLua bool setOrAddPropertyFromLua(const DtString &propertyName, const luabind::object &inProp, DtRwProperties *outProps)
Sets the named property from a Lua property, adding it if it&#39;s not found. Returns true if successful...
DT_DLL_vrfLua bool setListPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtPropertyInterface *outProp)
Lua-to-Property conversion functions.
DT_DLL_vrfLua const DtPropertyInterface * findConstListItemByValue(const DtRwPropertiesList *propList, const luabind::object &keyValues, int &index)
Called by findConstListItem in the case where keyValues is just a single value that matches a simple ...
DT_DLL_vrfLua bool setOffsetVerticesPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtPropertyInterface *outProp)
Lua-to-Property conversion functions.
DT_DLL_vrfLua DtPropertyInterface * findMapItem(DtRwPropertiesMap *propMap, const luabind::object &keyValue)
Find the item in the map that matches the given key defined in the keyValue Lua object.
DT_DLL_vrfLua bool setLuaFromOffsetVerticesProp(lua_State *L, const DtString &propertyName, const DtPropertyInterface *inProp, luabind::object &outProp)
Property-to-Lua conversion functions.
DT_DLL_vrfLua bool setPropertyMapItemFromLua(const DtString &propertyName, const luabind::object &keyValue, const luabind::object &inProp, DtRwProperties *outProps)
Finds the item in the named map property that matches the specified keyValues and updates it with the...
DT_DLL_vrfLua const DtPropertyInterface * findConstListItem(const DtRwPropertiesList *propList, const luabind::object &keyValues, int &index)
Find the item in the list that matches the given keys defined in the keyValues Lua object...
DT_DLL_vrfLua bool setPropertyFromLua(const DtString &propertyName, const luabind::object &inProp, DtRwProperties *outProps)
Sets the named property property from a Lua property. Returns true if successful. ...
DT_DLL_vrfLua bool setVectorPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtPropertyInterface *outProp)
Lua-to-Property conversion functions.
Interface class used to define minimal interface for a property. The DtPropertyInterface class provid...
Definition: propertyInterface.h:48
DT_DLL_vrfLua bool setBoolPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtPropertyInterface *outProp)
Lua-to-Property conversion functions.
DT_DLL_vrfLua bool setPropertyListItemFromLua(const DtString &propertyName, const luabind::object &keyValues, const luabind::object &inProp, DtRwProperties *outProps)
Finds the item in the named list property that matches the specified keyValues and updates it with th...
DT_DLL_vrfLua DtPropFromLuaCreatorFcnMap & propertyFromLuaCreatorFcnMap()
The Lua-to-Property creator by type.
DT_DLL_vrfLua bool setDoublePropFromLua(const DtString &propertyName, luabind::object const &inProp, DtPropertyInterface *outProp)
Lua-to-Property conversion functions.
DT_DLL_vrfLua bool setLuaFromIntProp(lua_State *L, const DtString &propertyName, const DtPropertyInterface *inProp, luabind::object &outProp)
Property-to-Lua conversion functions.
DT_DLL_vrfLua DtPropertyInterface * createDoublePropFromLua(const DtString &propertyName, luabind::object const &inProp, DtRwProperties *parent)
Lua-to-Property creation functions.
DT_DLL_vrfLua bool setLuaFromStringProp(lua_State *L, const DtString &propertyName, const DtPropertyInterface *inProp, luabind::object &outProp)
Property-to-Lua conversion functions.
DT_DLL_vrfLua DtString convertMapKey(const DtRwPropertiesMap *propMap, const luabind::object &keyValue)
Converts the Lua object to a string to be used as a key to the specified DtRwPropertiesMap.
DT_DLL_vrfLua bool setLuaFromBoolProp(lua_State *L, const DtString &propertyName, const DtPropertyInterface *inProp, luabind::object &outProp)
Property-to-Lua conversion functions.
DT_DLL_vrfLua bool setLuaFromListProp(lua_State *L, const DtString &propertyName, const DtPropertyInterface *inProp, luabind::object &outProp)
Property-to-Lua conversion functions.
#define DT_DLL_vrfLua
This file is used to determine how to build.
Definition: vrfLuaDefines.h:25
DT_DLL_vrfLua bool setLuaFromVerticesProp(lua_State *L, const DtString &propertyName, const DtPropertyInterface *inProp, luabind::object &outProp)
Property-to-Lua conversion functions.
DT_DLL_vrfLua const DtPropertyInterface * findConstListItemByKeys(const DtRwPropertiesList *propList, const luabind::object &keyValues, int &index)
Called by findConstListItem in the case where keyValues is a table of keys that match fields in the s...
DT_DLL_vrfLua DtPropertyInterface * createListPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtRwProperties *parent)
Lua-to-Property creation functions.
Acts as a map for properties. A map is a definition that has a key and a prototype, with values being the key and prototype pair. The key can only be a string (DtRwStringType), int (DtRwIntType, DtRwInt8Type, DtRwInt16Type, DtRwInt32Type), or real (DtRwRealType, DtRwReal32Type, DtRwReal64Type).
Definition: rwPropertiesMap.h:41
DT_DLL_vrfLua DtPropertyInterface * createTablePropFromLua(const DtString &propertyName, luabind::object const &inProp, DtRwProperties *parent)
Lua-to-Property creation functions.
DT_DLL_vrfLua bool setStringPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtPropertyInterface *outProp)
Lua-to-Property conversion functions.
DT_DLL_vrfLua DtPropertyInterface * createCustomPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtRwProperties *parent)
Lua-to-Property creation functions.
DT_DLL_vrfLua bool setVerticesPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtPropertyInterface *outProp)
Lua-to-Property conversion functions.
DT_DLL_vrfLua bool setEntityTypePropFromLua(const DtString &propertyName, luabind::object const &inProp, DtPropertyInterface *outProp)
Lua-to-Property conversion functions.
DT_DLL_vrfLua bool setLuaFromObjectTypeProp(lua_State *L, const DtString &propertyName, const DtPropertyInterface *inProp, luabind::object &outProp)
Property-to-Lua conversion functions.
DT_DLL_vrfLua bool setLuaFromVectorProp(lua_State *L, const DtString &propertyName, const DtPropertyInterface *inProp, luabind::object &outProp)
Property-to-Lua conversion functions.
std::map< DtString, luaToPropFnc > DtPropFromLuaFcnMap
Definition: propertySetter.h:241
DT_DLL_vrfLua bool setLuaFromEntityTypeProp(lua_State *L, const DtString &propertyName, const DtPropertyInterface *inProp, luabind::object &outProp)
Property-to-Lua conversion functions.
DT_DLL_vrfLua DtPropertyInterface * createStructPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtRwProperties *parent)
Lua-to-Property creation functions.
DT_DLL_vrfLua DtPropertyInterface * createBoolPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtRwProperties *parent)
Lua-to-Property creation functions.
DT_DLL_vrfLua bool setLuaMapItemFromProperty(lua_State *L, const DtString &propertyName, const luabind::object &keyValue, const DtRwProperties *inProps, luabind::object &outItem)
Finds the item in the named map property that matches the specified keyValue and sets outItem with it...
DT_DLL_vrfLua DtPropertyInterface * findListItem(DtRwPropertiesList *propList, const luabind::object &keyValues, int &index)
Find the item in the list that matches the given keys defined in the keyValues Lua object...
Acts as a DtRwList for properties. Only real difference between this class and a DtRwProperties class...
Definition: rwPropertiesList.h:38
A list of properties. A DtPropertyInterface object that is a specialized version of DtRwVariableBindi...
Definition: rwProperties.h:126
DT_DLL_vrfLua bool setLuaFromDoubleProp(lua_State *L, const DtString &propertyName, const DtPropertyInterface *inProp, luabind::object &outProp)
Property-to-Lua conversion functions.
DT_DLL_vrfLua bool setObjectTypePropFromLua(const DtString &propertyName, luabind::object const &inProp, DtPropertyInterface *outProp)
Lua-to-Property conversion functions.
bool(* propToLuaFnc)(lua_State *L, const DtString &propertyName, const DtPropertyInterface *inProp, luabind::object &outProp)
Function signature for Property-to-Lua conversion functions.
Definition: propertySetter.h:135
DT_DLL_vrfLua bool setStructPropFromLua(const DtString &propertyName, luabind::object const &inProp, DtPropertyInterface *outProp)
Lua-to-Property conversion functions.
std::map< int, luaToPropCreatorFnc > DtPropFromLuaCreatorFcnMap
Definition: propertySetter.h:249
std::map< DtString, propToLuaFnc > DtLuaFromPropFcnMap
Definition: propertySetter.h:245

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)