CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
FxBIMDiscipline.h
Go to the documentation of this file.
1//
2// (C) Copyright 2020-2025 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
49
51{
53public:
55
56 static CFxBIMDisciplinePtr Get( const DisciplineType& type ); //returnes one of predefined disciplines and nullptr for kCustom
57 static CFxBIMDisciplinePtr Create( OdDbObjectId idBimDatabase, const OdString& name ); //creates kCustom discipline
58
59 [[deprecated( "Use version that passes database id as a parameter" )]]
61
62 const OdString& Name() const;
63 const DisciplineType& Type() const;
64
66
67protected:
69
70protected:
71 std::shared_ptr< CFxBIMDisciplineImpl > m_pImpl;
72};
#define FXBIM_COMMON_CODE_API
Definition FxBIMDefs.h:5
DisciplineType
std::shared_ptr< CFxBIMDiscipline > CFxBIMDisciplinePtr
static CFxBIMDisciplinePtr Create(OdDbObjectId idBimDatabase, const OdString &name)
const OdString & Name() const
std::shared_ptr< CFxBIMDisciplineImpl > m_pImpl
bool IsEqual(CFxBIMDisciplinePtr p)
static CFxBIMDisciplinePtr Get(const DisciplineType &type)
virtual ~CFxBIMDiscipline()
friend class CFxBIMDisciplineImpl
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