CFx SDK Documentation  2020SP3
FxBIMDiscipline.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "FxBIM.h"
4 
5 class CFxBIMDisciplineImpl;
6 
7 class CFxBIMDiscipline;
8 typedef std::shared_ptr< CFxBIMDiscipline > CFxBIMDisciplinePtr;
9 
10 enum class DisciplineType
11 {
12  kCustom = -1,
13  kOther,
15  kStructural,
16  kMechanical,
17  kElectrical,
18  kPlumbing,
19  kCoordiantion,
20  kAirConditioning,
21  kBuildingServices,
22  kCooling,
23  kHVAC,
24  kHeat,
25  kProcess,
26  kSpecialPiping,
27  kSprinkler,
28  kVentilation,
29  kFire,
30  kCivil,
32 };
33 
35 {
36  friend class CFxBIMDisciplineImpl;
37 public:
38  virtual ~CFxBIMDiscipline();
39 
40  static CFxBIMDisciplinePtr Get( const DisciplineType& type ); //returnes one of predefined disciplines and nullptr for kCustom
41  static CFxBIMDisciplinePtr Create( const OdString& name ); //creates kCustom discipline
42 
43  const OdString& Name() const;
44  const DisciplineType& Type() const;
45 
47 
48 protected:
50 
51 protected:
52  std::shared_ptr< CFxBIMDisciplineImpl > m_pImpl;
53 };
OdString
Definition: OdString.h:95
name
GLuint const GLchar * name
Definition: gles2_ext.h:265
type
GLuint GLsizei GLsizei GLint GLenum * type
Definition: gles2_ext.h:274
CFxBIMDiscipline::~CFxBIMDiscipline
virtual ~CFxBIMDiscipline()
FXBIM_API
#define FXBIM_API
Definition: FxBIM.h:4
CFxBIMDiscipline::Create
static CFxBIMDisciplinePtr Create(const OdString &name)
CFxBIMDiscipline::IsEqual
bool IsEqual(CFxBIMDisciplinePtr p)
DisciplineType
DisciplineType
Definition: FxBIMDiscipline.h:11
DisciplineType::kArchitectural
@ kArchitectural
CFxBIMDiscipline::Type
const DisciplineType & Type() const
CFxBIMObject
Definition: FxBIM.h:131
CFxBIMDiscipline::CFxBIMDiscipline
CFxBIMDiscipline()
CFxBIMDiscipline::m_pImpl
std::shared_ptr< CFxBIMDisciplineImpl > m_pImpl
Definition: FxBIMDiscipline.h:52
FxBIM.h
CFxBIMDiscipline::Get
static CFxBIMDisciplinePtr Get(const DisciplineType &type)
CFxBIMDisciplinePtr
std::shared_ptr< CFxBIMDiscipline > CFxBIMDisciplinePtr
Definition: FxBIMDiscipline.h:7
DisciplineType::kCustom
@ kCustom
CFxBIMDiscipline
Definition: FxBIMDiscipline.h:35
CFxBIMDiscipline::Name
const OdString & Name() const