CTubeProjectionLinesProviderComp.h
Go to the documentation of this file.
1 #ifndef iipr_CTubeProjectionLinesProviderComp_included
2 #define iipr_CTubeProjectionLinesProviderComp_included
3 
4 
5 // ACF-Solutions includes
7 
8 
9 namespace iipr
10 {
11 
12 
15  virtual public i2d::ICalibrationProvider
16 {
17 public:
19 
20  I_BEGIN_COMPONENT(CTubeProjectionLinesProviderComp);
21  I_REGISTER_INTERFACE(i2d::ICalibrationProvider);
22  I_ASSIGN(m_tubeParamsIdAttrPtr, "TubeParamsId", "ID of the tube parameter in the parameter set", true, "TubeParamsId");
23  I_ASSIGN(m_linesCountParamsIdAttrPtr, "LinesCountParamsId", "ID of the line count parameter in the parameter set", true, "LinesCountParamsId");
24  I_ASSIGN(m_calibrationProviderCompPtr, "CalibrationProvider", "Provider of the transformation between logical and physical coordinate systems", false, "CalibrationProvider");
25  I_ASSIGN_TO(m_calibrationSupplierCompPtr, m_calibrationProviderCompPtr, false);
26  I_ASSIGN_TO(m_calibrationSupplierModelCompPtr, m_calibrationProviderCompPtr, false);
27  I_END_COMPONENT;
28 
29  // reimplemented (i2d::ICalibrationProvider)
30  virtual const i2d::ICalibration2d* GetCalibration() const;
31 
32 protected:
33  // reimplemented (iipr::CMultiLineSupplierCompBase)
34  virtual int ProduceObject(ProductType& result) const;
35 
36  // reimplemented (icomp::CComponentBase)
37  virtual void OnComponentCreated();
38  virtual void OnComponentDestroyed();
39 
40 private:
41  I_ATTR(QByteArray, m_tubeParamsIdAttrPtr);
42  I_ATTR(QByteArray, m_linesCountParamsIdAttrPtr);
43  I_REF(i2d::ICalibrationProvider, m_calibrationProviderCompPtr);
44  I_REF(iproc::ISupplier, m_calibrationSupplierCompPtr);
45  I_REF(imod::IModel, m_calibrationSupplierModelCompPtr);
46 };
47 
48 
49 } // namespace iipr
50 
51 
52 #endif // !iipr_CTubeProjectionLinesProviderComp_included
53 
54 
virtual const i2d::ICalibration2d * GetCalibration() const
Base interface for suppliers providing synchrone processing of single object with "pull data" model...
Definition: ISupplier.h:22
I_ASSIGN_TO(m_calibrationSupplierCompPtr, m_calibrationProviderCompPtr, false)
virtual int ProduceObject(ProductType &result) const
Produce single object.

© 2007-2011 Witold Gantzke and Kirill Lepskiy