CFx SDK Documentation  2020SP3
daiSchema.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2019, 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-2019 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 #include "OdaCommon.h"
25 #include "daiModule.h"
26 #include "daiEntity.h"
27 #include "daiNamedType.h"
28 
29 #ifndef _DAI_SCHEMA_H_
30 #define _DAI_SCHEMA_H_
31 
35 namespace OdDAI {
36 
40  class DAI_EXPORT Schema : public DictionaryInstance
41  {
42  public:
43 
44  //DOM-IGNORE-BEGIN
45  ODRX_DECLARE_MEMBERS(Schema);
46  //DOM-IGNORE-END
47 
48  //DOM-IGNORE-BEGIN
49  virtual void in(OdString schemaFileName);
50  //DOM-IGNORE-END
51 
56  const OdAnsiString& name() const;
57 
62  const EntitySet entities() const;
63 
68  const EntityPtr find(OdAnsiString entityName) const;
69 
74  const OdBaseTypeDictionary namedTypes() const;
75 
80  const OdBaseTypePtr namedType(const char *name);
81 
88  void getSuperEntityCollection(const EntityPtr targetEntity, EntityList& collectionToFill) const;
89 
90  protected:
91 //DOM-IGNORE-BEGIN
98  void setName(const OdAnsiString name);
99 
106  void setEntities(const EntitySet &entities);
107 
114  void setNamedTypes(const OdDAI::OdBaseTypeDictionary &namedTypes);
115 //DOM-IGNORE-END
116 
117 //DOM-IGNORE-BEGIN
118  private:
119  OdAnsiString m_name;
120  OdRxDictionaryPtr m_entities;
121  OdBaseTypeDictionary m_namedTypeDictionary;
122 //DOM-IGNORE-END
123  };
124 
129 }
130 
131 #endif // _DAI_SCHEMA_H_
OdString
Definition: OdString.h:95
OdDAI::OdBaseTypeDictionary
std::map< std::string, OdBaseTypePtr > OdBaseTypeDictionary
Definition: daiBaseType.h:46
name
GLuint const GLchar * name
Definition: gles2_ext.h:265
daiModule.h
OdDAI
Definition: daiAccessDefines.h:31
OdSmartPtr< OdRxDictionary >
daiNamedType.h
daiEntity.h
OdaCommon.h
OdDAI::SchemaPtr
OdSmartPtr< Schema > SchemaPtr
Definition: daiRepository.h:50
OdDAI::OdBaseTypePtr
OdSmartPtr< OdBaseType > OdBaseTypePtr
Definition: daiBaseType.h:45
DAI_EXPORT
#define DAI_EXPORT
Definition: daiBuildOptions.h:28
ODRX_DECLARE_MEMBERS
#define ODRX_DECLARE_MEMBERS(ClassName)
Definition: RxObject.h:112