IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
BaseDiskImageAccessor.h
1 // BaseDiskImageAccessor.h:
3 // ------------------------
4 //
14 
15 #ifndef __IPSDKIMAGE_BASEDISKIMAGEACCESSOR_H__
16 #define __IPSDKIMAGE_BASEDISKIMAGEACCESSOR_H__
17 
18 // suppression warnings
19 // warning C4251: 'ipsdk::image::BaseDiskImageAccessor::_filePath' : class 'boost::filesystem::path' nécessite une interface DLL pour être utilisé(e) par les clients de class 'ipsdk::image::BaseDiskImageAccessor'
20 #pragma warning (push)
21 #pragma warning (disable : 4251)
22 
23 #include <IPSDKImage/Accessor/BaseImageAccessor.h>
24 
25 namespace ipsdk {
26 namespace image {
27 
30 
32 {
33  // declare serial class
35 
36 public:
40  virtual ~BaseDiskImageAccessor() = 0;
42 
43 // methods
44 public:
47  const boost::filesystem::path& getFilePath() const;
48 
52  bool hasSharedRemoteAccess() const;
53 
54 protected:
57  std::string getImageInfoStr() const;
58 
63  void initBase(const boost::filesystem::path& filePath,
64  const eImageAccessMode& accessMode,
66  const GeometricCalibrationConstPtr& pGeometricCalibration,
67  const bool bSharedRemoteAccess);
68 
69 
76  boost::filesystem::path getNewDiskImagePath(const std::string strExtension, const BaseImageGeometry& geometry);
77 
78 // attributes
79 private:
81  boost::filesystem::path _filePath;
82 
85  bool _bSharedRemoteAccess;
86 };
87 
90 
91 } // end of namespace image
92 } // end of namespace ipsdk
93 
94 #pragma warning (pop)
95 
96 #endif // __IPSDKIMAGE_BASEDISKIMAGEACCESSOR_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Base class for image files accessors.
Definition: BaseDiskImageAccessor.h:31
boost::shared_ptr< const ipsdk::GeometricCalibration > GeometricCalibrationConstPtr
shared pointer to const ipsdk::GeometricCalibration
Definition: GeometricCalibrationTypes.h:31
#define IPSDK_DECLARE_ABSTRACT_SERIAL_WITHOUT_COPY(libraryName, className)
macro enabling serialization on abstract class
Definition: SerializationHdrMacro.h:97
Base class for image geometry.
Definition: BaseImageGeometry.h:38
IPSDKIMAGE_API ImageGeometryPtr geometry(const eImageBufferType &imageBufferType, const ipUInt64 sizeX, const ipUInt64 sizeY, const VolumeGeometry &volumeGeometry, const ColorGeometry &colorGeometry, const TemporalGeometry &temporalGeometry)
create an image geometry
Base class for image accessors.
Definition: BaseImageAccessor.h:34
#define IPSDKIMAGE_API
Import/Export macro for library IPSDKImage.
Definition: IPSDKImageExports.h:27
eImageAccessMode
Image access mode.
Definition: ImageTypes.h:110