CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
FxBIMDiscipline.h
Go to the documentation of this file.
1//
2// (C) Copyright 2020-2023 by Graebert GmbH.
3//
4// Permission to use, copy, modify, and distribute this software in
5// object code form for any purpose and without fee is hereby granted,
6// provided that the above copyright notice appears in all copies and
7// that both that copyright notice and the limited warranty and
8// restricted rights notice below appear in all supporting
9// documentation.
10//
11// GRAEBERT PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
12// GRAEBERT SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
13// MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. GRAEBERT GMBH
14// DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
15// UNINTERRUPTED OR ERROR FREE.
16
17#pragma once
18
19#include "FxBIM.h"
20
21class CFxBIMDisciplineImpl;
22
24typedef std::shared_ptr< CFxBIMDiscipline > CFxBIMDisciplinePtr;
25
27{
28 kCustom = -1,
29 kOther,
39 kHVAC,
40 kHeat,
45 kFire,
46 kCivil,
48};
49
51{
52 friend class CFxBIMDisciplineImpl;
53public:
55
56 static CFxBIMDisciplinePtr Get( const DisciplineType& type ); //returnes one of predefined disciplines and nullptr for kCustom
57 static CFxBIMDisciplinePtr Create( const OdString& name ); //creates kCustom discipline
58
59 const OdString& Name() const;
60 const DisciplineType& Type() const;
61
63
64protected:
66
67protected:
68 std::shared_ptr< CFxBIMDisciplineImpl > m_pImpl;
69};
#define FXBIM_COMMON_CODE_API
Definition: FxBIM.h:21
DisciplineType
std::shared_ptr< CFxBIMDiscipline > CFxBIMDisciplinePtr
const OdString & Name() const
std::shared_ptr< CFxBIMDisciplineImpl > m_pImpl
bool IsEqual(CFxBIMDisciplinePtr p)
static CFxBIMDisciplinePtr Get(const DisciplineType &type)
virtual ~CFxBIMDiscipline()
static CFxBIMDisciplinePtr Create(const OdString &name)
const DisciplineType & Type() const
GLuint const GLchar * name
Definition: gles2_ext.h:265
GLuint GLsizei GLsizei GLint GLenum * type
Definition: gles2_ext.h:274