Artec 3D Scanning SDK  2.0
IModelInfo.h
Go to the documentation of this file.
1 /********************************************************************
2 *
3 * Project Artec 3D Scanning SDK
4 *
5 * Purpose: Interface for reading some attributes from IModel object
6 *
7 * Copyright: Artec Group
8 *
9 ********************************************************************/
10 #ifndef _IMODELINFO_H_
11 #define _IMODELINFO_H_
12 
14 #include <artec/sdk/base/IRef.h>
15 
16 namespace artec { namespace sdk { namespace base
17 {
18 
19 class IModel;
20 class IModelInfo;
21 class IArrayInt;
22 
23 extern "C"
24 {
25 
27  createModelInfo(IModelInfo** modelInfo);
28 
29 }
30 
31 /// Interface to obtain model's attributes
32 class IModelInfo : public IRef
33 {
34 public:
35  /**
36  * @brief Read attributes from model object.
37  */
38  virtual ErrorCode readInfo(const IModel* model) = 0;
39 
40  /**
41  * @brief Get indices of aligned scans.
42  * @return IArrayInt if the array is not-empty, NULL if no scans has been aligned.
43  */
44  virtual IArrayInt* getAlignInfo() = 0;
45 };
46 
47 } } } // namespace artec::sdk::base
48 
49 #endif // _IMODELINFO_H_
ErrorCode ABASESDK_LINK_SPEC createModelInfo(IModelInfo **modelInfo)
Container of Scan(s) and a single CompositeContainer.
Definition: IModel.h:60
Interface for array of integer data that supports smart reference counting.
Definition: IArray.h:79
virtual ErrorCode readInfo(const IModel *model)=0
Read attributes from model object.
Interface to obtain model's attributes.
Definition: IModelInfo.h:32
virtual IArrayInt * getAlignInfo()=0
Get indices of aligned scans.
#define ABASESDK_LINK_SPEC
Interface that implements reference counting and life-time management.
Definition: IRef.h:22