CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
MvdXmlConceptTemplate.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
3// All rights reserved.
4//
5// This software and its documentation and related materials are owned by
6// the Alliance. The software may only be incorporated into application
7// programs owned by members of the Alliance, subject to a signed
8// Membership Agreement and Supplemental Software License Agreement with the
9// Alliance. The structure and organization of this software are the valuable
10// trade secrets of the Alliance and its suppliers. The software is also
11// protected by copyright law and international treaty provisions. Application
12// programs incorporating this software must include the following statement
13// with their copyright notices:
14//
15// This application incorporates Open Design Alliance software pursuant to a license
16// agreement with Open Design Alliance.
17// Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
18// All rights reserved.
19//
20// By use of this software, its documentation or related materials, you
21// acknowledge and accept the above terms.
23
24#if !defined(ODA_ODMVDXMLCONCEPTTEMPLATE_H_INCLUDED_)
25#define ODA_ODMVDXMLCONCEPTTEMPLATE_H_INCLUDED_
26
27#if _MSC_VER > 1000
28#pragma once
29#endif // _MSC_VER > 1000
30
31#include "StringArray.h"
32#include "IfcEntity.h"
33#include "MvdXmlRule.h"
34#include "MvdXmlIdentity.h"
35
39namespace OdMvdXml
40{
44
50 {
52
53 public:
58
63 const OdAnsiString& getApplicableSchema() const { return m_applicableSchema; };
64
69 void setApplicableSchema(const OdAnsiString &value) { m_applicableSchema = value; };
70
76 OdAnsiString& getApplicableEntity() { return m_applicableEntities; };
77
83 void setApplicableEntity(const OdAnsiString& value) { m_applicableEntities = value; };
84
90 const bool getIsPartial() const { return m_isPartial; };
91
97 void setIsPartial(const bool value) { m_isPartial = value; };
98
103 const OdMvdXmlAttributeRulePtrArray& getRules() const { return m_rules; };
104
109 const OdMvdXmlConceptTemplatePtrArray& getSubTemplates() const { return m_subTemplates; };
110
117
124
130 OdMvdXmlRule* getRuleByID(const char* ruleId);
131
141 OdResult checkInstance(const OdDAI::ApplicationInstance* pInstance, bool& result) const;
142
148
155
156 protected:
162 void assign(const OdMvdXmlConceptTemplate* other);
163
169 virtual OdAnsiString getElementName();
170
178 virtual OdResult inAttributes(TiXmlElement* pItem) override;
179
188 virtual OdResult inChildNode(const char *nodeName, TiXmlElement* pChild) override;
189
197 virtual OdResult outAttributes(TiXmlElement* pItem) override;
198
206 virtual OdResult outChildNodes(TiXmlNode* pParent) override;
207
208 private:
209 // TODO: In future change to OdStringArray
219 OdAnsiString m_applicableSchema;
220
231 OdAnsiString m_applicableEntities;
232
237 bool m_isPartial;
238
245 OdMvdXmlConceptTemplatePtrArray m_subTemplates;
246
253 OdMvdXmlAttributeRulePtrArray m_rules;
254 };
255}
256
257#endif // !defined(ODA_ODMVDXMLCONCEPTTEMPLATE_H_INCLUDED_)
258
#define SMARTPTR(classname)
Definition IfcCommon.h:33
OdResult
Definition OdResult.h:29
#define ODRX_DECLARE_MEMBERS(ClassName)
Definition RxObject.h:112
void setApplicableSchema(const OdAnsiString &value)
OdMvdXmlEntityRule * getEntityRuleByID(const char *ruleId)
virtual OdAnsiString getElementName()
const OdMvdXmlConceptTemplatePtrArray & getSubTemplates() const
virtual OdResult inAttributes(TiXmlElement *pItem) override
const OdAnsiString & getApplicableSchema() const
void assign(const OdMvdXmlConceptTemplate *other)
virtual OdResult outChildNodes(TiXmlNode *pParent) override
virtual OdResult outAttributes(TiXmlElement *pItem) override
const OdMvdXmlAttributeRulePtrArray & getRules() const
virtual OdResult inChildNode(const char *nodeName, TiXmlElement *pChild) override
OdMvdXmlRule * getRuleByID(const char *ruleId)
OdMvdXmlAttributeRule * getAttributeRuleByID(const char *ruleId)
OdMvdXmlConceptTemplate & operator=(const OdMvdXmlConceptTemplate &other)
void setApplicableEntity(const OdAnsiString &value)
OdResult checkInstance(const OdDAI::ApplicationInstance *pInstance, bool &result) const
GLsizei const GLfloat * value
Definition gles2_ext.h:302
#define MVDXML_EXPORT