10 #define M_PI 3.1415926535897932384626433832795029 14 #define END_OF_LOOP -2 18 #define END_OF_FACE -1 80 ss <<
name <<
" Version: " << major <<
"." << minor <<
" Build " << revision;
96 #define FORWARD_DECL(x, y) \ 102 #define PLUGIN_HEADER(_class_) \ 104 std::string getName() override { return #_class_; } 106 #define PLUGIN_SOURCE(_class_) \ 107 PLUGINDECL App::Plugin* createPlugin(App::PluginManager& mgr) { return (App::Plugin*)new _class_(); } 122 #define OBJECT_HEADER(_class_, _type_) \ 124 static LxIfc4::LxIfc4EntityEnum getEntityType_Static() { return LxIfc4::_type_; } \ 126 explicit _class_(std::shared_ptr<_class_> other) { _coreObj = other->_coreObj; } \ 127 _class_& operator=(std::shared_ptr<_class_> other) \ 129 _coreObj = other->_coreObj; \ 132 friend bool operator==(std::shared_ptr<_class_> x, std::shared_ptr<_class_> y) { return x->_coreObj == y->_coreObj; } \ 133 friend bool operator!=(std::shared_ptr<_class_> x, std::shared_ptr<_class_> y) { return !(x == y); } \ 134 friend bool operator<(std::shared_ptr<_class_> x, std::shared_ptr<_class_> y) { return x->_coreObj < y->_coreObj; } \ 135 friend bool operator>(std::shared_ptr<_class_> x, std::shared_ptr<_class_> y) { return y < x; } \ 136 friend bool operator<=(std::shared_ptr<_class_> x, std::shared_ptr<_class_> y) { return !(x > y); } \ 137 friend bool operator>=(std::shared_ptr<_class_> x, std::shared_ptr<_class_> y) { return !(x < y); } \ 138 bool isEqual(std::shared_ptr<_class_> other) const { return (_coreObj == other->_coreObj); } 140 #define PROXY_HEADER_ABSTRACT(_openlexocadclass_, _corelexocadclass_, _type_) \ 141 OBJECT_HEADER(_openlexocadclass_, _type_) \ 143 _openlexocadclass_(_corelexocadclass_* aObj); \ 146 _corelexocadclass_* __getCasted__() const; 149 #define PROXY_HEADER(_openlexocadclass_, _corelexocadclass_, _type_) \ 150 PROXY_HEADER_ABSTRACT(_openlexocadclass_, _corelexocadclass_, _type_) \ 152 _openlexocadclass_(std::shared_ptr<OpenLxApp::Document> aDoc); \ 155 static std::shared_ptr<_openlexocadclass_> createIn(std::shared_ptr<OpenLxApp::Document> aDoc); \ 158 static std::shared_ptr<_openlexocadclass_> createFrom(_corelexocadclass_* aObj); 162 #define PROXY_SOURCE_ABSTRACT(_openlexocadclass_, _corelexocadclass_, _type_) \ 163 _corelexocadclass_* _openlexocadclass_::__getCasted__() const \ 165 auto casted = dynamic_cast<_corelexocadclass_*>(_coreObj); \ 169 #define PROXY_SOURCE(_openlexocadclass_, _corelexocadclass_, _type_) \ 170 PROXY_SOURCE_ABSTRACT(_openlexocadclass_, _corelexocadclass_, _type_) \ 171 _openlexocadclass_::_openlexocadclass_(std::shared_ptr<OpenLxApp::Document> aDoc) \ 172 { _coreObj = aDoc->__getInternalDoc__()->createObject<_corelexocadclass_>(); } \ 173 std::shared_ptr<_openlexocadclass_> _openlexocadclass_::createIn(std::shared_ptr<OpenLxApp::Document> aDoc) \ 175 auto obj = aDoc->__getInternalDoc__()->createObject<_corelexocadclass_>(); \ 177 if(obj) return std::make_shared<_openlexocadclass_>(obj); \ 180 std::shared_ptr<_openlexocadclass_> _openlexocadclass_::createFrom(_corelexocadclass_* aObj) \
182 if(aObj)
return std::make_shared<_openlexocadclass_>(aObj); \
183 else
return nullptr; \
185 #define PROXY_SOURCE_CUSTOM_CREATE(_openlexocadclass_, _corelexocadclass_, _type_) \ 186 PROXY_SOURCE_ABSTRACT(_openlexocadclass_, _corelexocadclass_, _type_) 188 #define PROXY_SOURCE_ABSTRACT(_openlexocadclass_, _corelexocadclass_, _type_) \ 189 _corelexocadclass_* _openlexocadclass_::__getCasted__() const \ 191 auto casted = dynamic_cast<_corelexocadclass_*>(_coreObj); \ 194 #define PROXY_SOURCE(_openlexocadclass_, _corelexocadclass_, _type_) \ 195 PROXY_SOURCE_ABSTRACT(_openlexocadclass_, _corelexocadclass_, _type_) \ 196 _openlexocadclass_::_openlexocadclass_(std::shared_ptr<OpenLxApp::Document> aDoc) \ 197 { _coreObj = aDoc->__getInternalDoc__()->createObject<_corelexocadclass_>(); } \ 198 std::shared_ptr<_openlexocadclass_> _openlexocadclass_::createIn(std::shared_ptr<OpenLxApp::Document> aDoc) \ 200 auto obj = aDoc->__getInternalDoc__()->createObject<_corelexocadclass_>(); \ 201 if(obj) return std::make_shared<_openlexocadclass_>(obj); \ 202 else return nullptr; \ 204 std::shared_ptr<_openlexocadclass_> _openlexocadclass_::createFrom(_corelexocadclass_* aObj) \ 206 if(aObj) return std::make_shared<_openlexocadclass_>(aObj); \ 207 else return nullptr; \ 209 #define PROXY_SOURCE_CUSTOM_CREATE(_openlexocadclass_, _corelexocadclass_, _type_) \ 210 PROXY_SOURCE_ABSTRACT(_openlexocadclass_, _corelexocadclass_, _type_) 214 #define EXT_FORWARD_DECL(_class_) class _class_##_Proxy; 216 #define EXT_DECLARE_PROXYOBJECT(_class_, _parentclass_) \ 217 class _class_##_Proxy : public _parentclass_ \ 219 OBJECT_HEADER(_class_##_Proxy, IFC_ENTITY_UNDEFINED) \ 221 _class_##_Proxy(_class_* aObject) : _parentclass_(aObject) { assert(aObject); } \ 222 virtual ~_class_##_Proxy(void) {} \ 225 _class_##_Proxy() {} \ 227 DECLARE_OBJECT_FACTORY(_class_##_Factory, _class_, IFC_ENTITY_UNDEFINED); 230 #define EXT_OBJECT_SOURCE(_class_, _parent_) \ 231 TYPESYSTEM_SOURCE(_class_, _parent_) \ 232 LX_NODE_SOURCE(_class_, _parent_) 234 #define EXT_FORWARD_DECL(_class_) class _class_##_Proxy; 245 #define DECL_PROPERTY(_class_, _name_, _type_) \ 247 _type_ get##_name_() const; \ 250 void set##_name_(const _type_& aValue); 252 #define DEFINE_PROPERTY(_class_, _name_, _propname_, _type_) \ 253 _type_ _class_::get##_name_() const { return __getCasted__()->_propname_.getValue(); } \ 254 void _class_::set##_name_(const _type_& aValue) { __getCasted__()->_propname_.setValue(aValue); } CloseDocument
Definition: Globals.h:44
X
Definition: Globals.h:32
NX
Definition: Globals.h:32
UpdateSelection
Definition: Globals.h:44
PYTHON
Definition: Globals.h:25
Core::PropertyText name
Definition: CoreDocument.h:143
AXO_LEFT
Definition: Globals.h:32
RemoveSelection
Definition: Globals.h:44
CSHARP
Definition: Globals.h:25
ErrorCode
Definition: Globals.h:85
#define OPENLXAPP_EXPORT
Definition: OpenLxApp_defines.h:12
Definition: ActiveScript.h:9
RemoveActivePoint
Definition: Globals.h:44
Y
Definition: Globals.h:32
RecomputeFinished
Definition: Globals.h:44
NZ
Definition: Globals.h:32
SetActivePoint
Definition: Globals.h:44
NewFile
Definition: Globals.h:44
Z
Definition: Globals.h:32
std::string toString() const
Definition: Globals.h:77
AXO_BACK_LEFT
Definition: Globals.h:32
FileOpened
Definition: Globals.h:44
NY
Definition: Globals.h:32
SetActiveDocument
Definition: Globals.h:44
BeforeSave
Definition: Globals.h:44
ClearSelection
Definition: Globals.h:44
AddSelection
Definition: Globals.h:44
std::string name
Definition: Globals.h:66
NewDocument
Definition: Globals.h:44