libMVRgdtf 40bc00a
A library for GDTF and MVR
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
CMediaRessourceVectorImpl.h
Go to the documentation of this file.
1//-----------------------------------------------------------------------------
2//----- Copyright deersoft 2015 - 2017 www.deersoft.de
3//-----------------------------------------------------------------------------
4#pragma once
5
6#include "SceneDataExchange.h"
8#include "CPositionImpl.h"
11#include "CSceneObjImpl.h"
12#include "CSymDefImpl.h"
13#include "CClassImpl.h"
14
15#include "CSourceImpl.h"
16#include "CMappingImpl.h"
17namespace VectorworksMVR
18{
19 class CMediaRessourceVectorImpl : public VCOMImpl<IMediaRessourceVectorInterface>
20 {
21 public:
24
25 private:
26 SceneData::SceneDataExchange* GetExchangeObj();
27
28 private:
31 bool fWriteMode;
32 bool fReadMode;
33
34 // This array is just to store the additional file path
35 TXStringArray fullPathStorage;
36
37
38 //----------------------------------------------------------------------------------------
39 // methods to write a file
40 public:
41 // Call this at the start of generating a MVR file
45 virtual VCOMError VCOM_CALLTYPE AddBufferToMvrFile(MvrString filename, char* buffer, size_t length);
46
47 // After this you can generate Aux Objects
48 virtual VCOMError VCOM_CALLTYPE CreateDataProviderObject( MvrString provider, MvrString version, ISceneDataProvider** outSceneDataProvider);
49 virtual VCOMError VCOM_CALLTYPE CreatePositionObject( const MvrUUID& guid, MvrString name, IPosition** outPositionObj);
50 virtual VCOMError VCOM_CALLTYPE CreateSymDefObject( const MvrUUID& guid, MvrString name, ISymDef** outSymDef);
51 virtual VCOMError VCOM_CALLTYPE CreateClassObject( const MvrUUID& guid, MvrString name, IClass** outclass);
53
54
55 // Then you can generate all other objects
56 virtual VCOMError VCOM_CALLTYPE CreateLayerObject( const MvrUUID& guid, MvrString name, ISceneObj** outLayerObj);
57 virtual VCOMError VCOM_CALLTYPE CreateGroupObject( const MvrUUID& guid, const STransformMatrix& offset, ISceneObj* addToContainer, ISceneObj** outGroupObj);
58 virtual VCOMError VCOM_CALLTYPE CreateGroupObject( const MvrUUID& guid, const STransformMatrix& offset, MvrString name, ISceneObj* addToContainer, ISceneObj** outGroupObj);
59 virtual VCOMError VCOM_CALLTYPE CreateFixture( const MvrUUID& guid, const STransformMatrix& offset, MvrString name, ISceneObj* addToContainer, ISceneObj** outFixture);
60 virtual VCOMError VCOM_CALLTYPE CreateSceneObject( const MvrUUID& guid, const STransformMatrix& offset, MvrString name, ISceneObj* addToContainer, ISceneObj** outSceneObj);
61 virtual VCOMError VCOM_CALLTYPE CreateFocusPoint( const MvrUUID& guid, const STransformMatrix& offset, MvrString name, ISceneObj* addToContainer, ISceneObj** outFocusPoint);
62 virtual VCOMError VCOM_CALLTYPE CreateTruss( const MvrUUID& guid, const STransformMatrix& offset, MvrString name, ISceneObj* addToContainer, ISceneObj** outTruss);
63 virtual VCOMError VCOM_CALLTYPE CreateSupport( const MvrUUID& guid, const STransformMatrix& offset, MvrString name, ISceneObj* addToContainer, ISceneObj** outSupport);
64 virtual VCOMError VCOM_CALLTYPE CreateVideoScreen( const MvrUUID& guid, const STransformMatrix& offset, MvrString name, ISceneObj* addToContainer, ISceneObj** outVideoScreen);
65 virtual VCOMError VCOM_CALLTYPE CreateProjector( const MvrUUID& guid, const STransformMatrix& offset, MvrString name, ISceneObj* addToContainer, ISceneObj** outProjector);
66
67 // Add the end call to write the file to disk
69
70
71 //----------------------------------------------------------------------------------------
72 // methods to read a file
73 public:
74 // Call this at the start of generating a MVR file
76
77 // Get data provider objs
78 virtual VCOMError VCOM_CALLTYPE GetDataProviderObjectCount(size_t& outCount);
79 virtual VCOMError VCOM_CALLTYPE GetDataProviderObjectAt(size_t at, ISceneDataProvider** outSceneDataProvider );
80
81 // Get data position objs
82 virtual VCOMError VCOM_CALLTYPE GetPositionObjectCount(size_t& outCount);
83 virtual VCOMError VCOM_CALLTYPE GetPositionObjectAt(size_t at, IPosition** outPosition);
84
85 // Get SymDef objs
86 virtual VCOMError VCOM_CALLTYPE GetSymDefCount(size_t& outCount);
87 virtual VCOMError VCOM_CALLTYPE GetSymDefAt(size_t at, ISymDef** outSymDef);
88
89 // Get Class objs
90 virtual VCOMError VCOM_CALLTYPE GetClassCount(size_t& outCount);
91 virtual VCOMError VCOM_CALLTYPE GetClassAt(size_t at, IClass** outClass);
92
93 // Get MappingDefinition objs
94 virtual VCOMError VCOM_CALLTYPE GetMappingDefinitionCount(size_t& outCount);
96
97 // Get File Traversel
98 virtual VCOMError VCOM_CALLTYPE GetAttachedFileCount(size_t& outCount);
100
101
102 // Traversel call for object tree
103 virtual VCOMError VCOM_CALLTYPE GetFirstLayer(ISceneObj** firstLayer );
104 virtual VCOMError VCOM_CALLTYPE GetFirstChild(ISceneObj* container, ISceneObj** outChild);
105 virtual VCOMError VCOM_CALLTYPE GetNextObject(ISceneObj* object, ISceneObj** outNextObj);
106
107 virtual VCOMError VCOM_CALLTYPE GetSceneObjectCount(size_t& countObjects );
108
109 // Check for duplicated uuids
110 virtual VCOMError VCOM_CALLTYPE GetDuplicatedUuids(bool& outDuplicated);
111
112 };
113}
const char * MvrString
Definition IMediaRessourceVectorInterface.h:16
#define VCOM_CALLTYPE
Definition VectorworksMVR.h:93
Definition SceneDataExchange.h:944
Definition StdAfx.h:187
Definition CMediaRessourceVectorImpl.h:20
virtual VCOMError VCOM_CALLTYPE CreateSymDefObject(const MvrUUID &guid, MvrString name, ISymDef **outSymDef)
Definition CMediaRessourceVectorImpl.cpp:180
virtual VCOMError VCOM_CALLTYPE GetFirstChild(ISceneObj *container, ISceneObj **outChild)
Definition CMediaRessourceVectorImpl.cpp:1407
virtual VCOMError VCOM_CALLTYPE GetPositionObjectCount(size_t &outCount)
Definition CMediaRessourceVectorImpl.cpp:1071
virtual VCOMError VCOM_CALLTYPE GetPositionObjectAt(size_t at, IPosition **outPosition)
Definition CMediaRessourceVectorImpl.cpp:1082
virtual VCOMError VCOM_CALLTYPE GetClassCount(size_t &outCount)
Definition CMediaRessourceVectorImpl.cpp:1217
virtual VCOMError VCOM_CALLTYPE CreateSupport(const MvrUUID &guid, const STransformMatrix &offset, MvrString name, ISceneObj *addToContainer, ISceneObj **outSupport)
Definition CMediaRessourceVectorImpl.cpp:766
virtual VCOMError VCOM_CALLTYPE CreateProjector(const MvrUUID &guid, const STransformMatrix &offset, MvrString name, ISceneObj *addToContainer, ISceneObj **outProjector)
Definition CMediaRessourceVectorImpl.cpp:903
virtual VCOMError VCOM_CALLTYPE AddFileToMvrFile(MvrString fullPath)
Definition CMediaRessourceVectorImpl.cpp:27
virtual VCOMError VCOM_CALLTYPE CreateFocusPoint(const MvrUUID &guid, const STransformMatrix &offset, MvrString name, ISceneObj *addToContainer, ISceneObj **outFocusPoint)
Definition CMediaRessourceVectorImpl.cpp:630
virtual VCOMError VCOM_CALLTYPE OpenForRead(MvrString fullPath)
Definition CMediaRessourceVectorImpl.cpp:990
virtual MvrString VCOM_CALLTYPE GetAttachedFileCountAt(size_t at)
Definition CMediaRessourceVectorImpl.cpp:1555
virtual VCOMError VCOM_CALLTYPE GetDataProviderObjectCount(size_t &outCount)
Definition CMediaRessourceVectorImpl.cpp:1016
virtual VCOMError VCOM_CALLTYPE CreateSceneObject(const MvrUUID &guid, const STransformMatrix &offset, MvrString name, ISceneObj *addToContainer, ISceneObj **outSceneObj)
Definition CMediaRessourceVectorImpl.cpp:564
virtual VCOMError VCOM_CALLTYPE GetSymDefAt(size_t at, ISymDef **outSymDef)
Definition CMediaRessourceVectorImpl.cpp:1155
virtual VCOMError VCOM_CALLTYPE CreateGroupObject(const MvrUUID &guid, const STransformMatrix &offset, ISceneObj *addToContainer, ISceneObj **outGroupObj)
Definition CMediaRessourceVectorImpl.cpp:364
virtual VCOMError VCOM_CALLTYPE CreateDataProviderObject(MvrString provider, MvrString version, ISceneDataProvider **outSceneDataProvider)
Definition CMediaRessourceVectorImpl.cpp:93
virtual VCOMError VCOM_CALLTYPE AddBufferToMvrFile(MvrString filename, char *buffer, size_t length)
Definition CMediaRessourceVectorImpl.cpp:47
virtual VCOMError VCOM_CALLTYPE OpenForWrite(MvrString fullPath)
Definition CMediaRessourceVectorImpl.cpp:77
virtual VCOMError VCOM_CALLTYPE GetClassAt(size_t at, IClass **outClass)
Definition CMediaRessourceVectorImpl.cpp:1228
virtual VCOMError VCOM_CALLTYPE GetFirstLayer(ISceneObj **firstLayer)
Definition CMediaRessourceVectorImpl.cpp:1363
virtual VCOMError VCOM_CALLTYPE GetNextObject(ISceneObj *object, ISceneObj **outNextObj)
Definition CMediaRessourceVectorImpl.cpp:1481
CMediaRessourceVectorImpl()
Definition CMediaRessourceVectorImpl.cpp:10
virtual VCOMError VCOM_CALLTYPE AddGdtfFolderLocation(MvrString fullPathToFolder)
Definition CMediaRessourceVectorImpl.cpp:64
virtual VCOMError VCOM_CALLTYPE CreateLayerObject(const MvrUUID &guid, MvrString name, ISceneObj **outLayerObj)
Definition CMediaRessourceVectorImpl.cpp:319
virtual VCOMError VCOM_CALLTYPE GetAttachedFileCount(size_t &outCount)
Definition CMediaRessourceVectorImpl.cpp:1547
virtual VCOMError VCOM_CALLTYPE CreateTruss(const MvrUUID &guid, const STransformMatrix &offset, MvrString name, ISceneObj *addToContainer, ISceneObj **outTruss)
Definition CMediaRessourceVectorImpl.cpp:697
virtual VCOMError VCOM_CALLTYPE CreateFixture(const MvrUUID &guid, const STransformMatrix &offset, MvrString name, ISceneObj *addToContainer, ISceneObj **outFixture)
Definition CMediaRessourceVectorImpl.cpp:496
virtual VCOMError VCOM_CALLTYPE GetSceneObjectCount(size_t &countObjects)
Definition CMediaRessourceVectorImpl.cpp:1567
virtual VCOMError VCOM_CALLTYPE CreatePositionObject(const MvrUUID &guid, MvrString name, IPosition **outPositionObj)
Definition CMediaRessourceVectorImpl.cpp:135
virtual VCOMError VCOM_CALLTYPE GetSymDefCount(size_t &outCount)
Definition CMediaRessourceVectorImpl.cpp:1144
virtual VCOMError VCOM_CALLTYPE GetDuplicatedUuids(bool &outDuplicated)
Definition CMediaRessourceVectorImpl.cpp:1573
virtual ~CMediaRessourceVectorImpl()
Definition CMediaRessourceVectorImpl.cpp:17
virtual VCOMError VCOM_CALLTYPE CreateClassObject(const MvrUUID &guid, MvrString name, IClass **outclass)
Definition CMediaRessourceVectorImpl.cpp:229
virtual VCOMError VCOM_CALLTYPE GetMappingDefinitionAt(size_t at, IMappingDefinition **outMapDef)
Definition CMediaRessourceVectorImpl.cpp:1301
virtual VCOMError VCOM_CALLTYPE CreateVideoScreen(const MvrUUID &guid, const STransformMatrix &offset, MvrString name, ISceneObj *addToContainer, ISceneObj **outVideoScreen)
Definition CMediaRessourceVectorImpl.cpp:835
virtual VCOMError VCOM_CALLTYPE GetMappingDefinitionCount(size_t &outCount)
Definition CMediaRessourceVectorImpl.cpp:1290
virtual VCOMError VCOM_CALLTYPE GetDataProviderObjectAt(size_t at, ISceneDataProvider **outSceneDataProvider)
Definition CMediaRessourceVectorImpl.cpp:1022
virtual VCOMError VCOM_CALLTYPE Close()
Definition CMediaRessourceVectorImpl.cpp:970
virtual VCOMError VCOM_CALLTYPE CreateMappingDefinitionObject(const MvrUUID &guid, MvrString name, IMappingDefinition **outMapDef)
Definition CMediaRessourceVectorImpl.cpp:274
Definition IMediaRessourceVectorInterface.h:134
Definition IMediaRessourceVectorInterface.h:187
Definition IMediaRessourceVectorInterface.h:125
Definition IMediaRessourceVectorInterface.h:111
Definition IMediaRessourceVectorInterface.h:300
Definition IMediaRessourceVectorInterface.h:156
Definition VectorworksMVR.h:149
Definition CieColor.h:9
std::vector< TXString > TXStringArray
Definition GSString.h:547
uint32_t VCOMError
Definition VectorworksMVR.h:119
Definition IMediaRessourceVectorInterface.h:64
Definition IMediaRessourceVectorInterface.h:23