TransformationResultBlock.h
1 //##################################################################################################
2 //
3 // Ceetron Export
4 // Component: VTFx
5 //
6 // --------------------------------------------------------------------------------------------
7 // Copyright (C) 2015, Ceetron AS
8 // This is UNPUBLISHED PROPRIETARY SOURCE CODE of Ceetron AS. The contents of this file may
9 // not be disclosed to third parties, copied or duplicated in any form, in whole or in part,
10 // without the prior written permission of Ceetron AS.
11 //##################################################################################################
12 
13 #pragma once
14 
15 #include "CeeVTFx/Base.h"
16 #include "CeeVTFx/Block.h"
17 #include "CeeCore/Str.h"
18 
19 class VTFxTransformationResultsBlock;
20 
21 namespace cee {
22 namespace vtfx {
23 
24 //=================================================================================================================================
25 //
26 //
27 //
28 //=================================================================================================================================
29 class CEE_VTFX_EXPORT TransformationResultBlock : public Block
30 {
31 public:
32  TransformationResultBlock(int blockId);
34 
35  Str name() const;
36  void setName(const Str& resultName);
37  int resultId() const;
38  void setResultId(int resultId);
39 
40  std::vector<int> transformationResultValuesBlocks(size_t stateIndex) const;
41  int transformationResultValuesBlockCount(size_t stateIndex) const;
42  bool addTransformationResultValuesBlock(int transformationResultValuesBlockId, int stateId = 1);
43  bool setTransformationResultValuesBlocks(const std::vector<int>& transformationResultValuesBlockIds, int stateId = 1);
44 
45  size_t stateCount() const;
46  size_t stateIndex(int stateId) const;
47  int stateId(size_t stateIndex) const;
48 
49  bool checkValidity() const;
50 
51 private:
52  TransformationResultBlock(VTFxTransformationResultsBlock* block, int blockId);
53 
54  VTFxBlock* internal_vtfxBlock() const;
55 
56 private:
57  friend class DatabasePrivate;
58 
59  CEE_PRIVATE_IMPL(TransformationResultBlock);
60  CEE_DISALLOW_COPY_AND_ASSIGN(TransformationResultBlock);
61 };
62 
63 }
64 }
Namespace cee contains all functionality and structures under the Core component. ...
Definition: AppAssert.cpp:18
A general unicode based string class.
Definition: Str.h:28
A block defining a rigid body transformation result in a VTFx database.
Definition: TransformationResultBlock.h:29
Abstract base class for all VTFx blocks.
Definition: Block.h:29