IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
ipsdk::image::CudaPlanStorage Class Reference
Inheritance diagram for ipsdk::image::CudaPlanStorage:
ipsdk::image::BasePlanStorage ipsdk::BaseObjectWithSkeleton ipsdk::BaseSerializationObject ipsdk::BaseDynamicObject

Public Types

typedef boost::shared_ptr< CudaPlanStorageCudaPlanStoragePtr
 Shared pointer to GpuPlanStorage.
 
typedef boost::shared_ptr< const CudaPlanStorageCudaPlanStorageConstPtr
 
typedef boost::shared_ptr< CudaBuffer > CudaBufferPtr
 Shared pointer to CudaBuffer.
 
typedef boost::shared_ptr< const CudaBuffer > CudaBufferConstPtr
 

Public Member Functions

ePlanStorageType getPlanStorageType () const
 retrieve plan storage type
 
BoolResult init (const ImagePlanGeometry &geometry, const ipUInt64 deviceIdx=0)
 storage initialization on a specified device More...
 
eImageAccessMode getAccessMode () const
 retrieve image access mode More...
 
bool canBeRemotlyAccessed () const
 retrieve flag indicating whether data can be remotly accessed More...
 
bool hasBinary8BitsStorage () const
 method allowing to check whether image underlying storage stores binary data with a 8 bit alignment More...
 
ipUInt64 getFullBufferSize () const
 retrieve full buffer size More...
 
BoolResult resizePlan (const ImagePlanGeometry &planGeometry)
 resize plan storage in derived class (not used, see the other prototype) More...
 
BoolResult resize (const ImagePlanGeometry &geometry, const ipUInt64 deviceIdx=0)
 resize plan storage overloaded More...
 
Constructors and destructors
 CudaPlanStorage ()
 
 ~CudaPlanStorage ()
 
const void * getDataPtr () const
 retrieve data pointer More...
 
void * getDataPtr ()
 retrieve data pointer More...
 
const CudaBuffer & getBuffer () const
 retrieve buffer associated to storage More...
 
CudaBuffer & getBuffer ()
 retrieve buffer associated to storage More...
 
ipUInt64 getDeviceIdx () const
 Returns the device index on which the data is stored. More...
 
- Public Member Functions inherited from ipsdk::image::BasePlanStorage
bool isInit () const
 retrieve object initialisation flag
 
bool hasFullDataAccess () const
 check whether object has a contiguous access to full plan data More...
 
virtual bool hasRowDataAccess (const ipUInt64 startOffsetY, const ipUInt64 sizeY=1) const
 check whether object has a contiguous access to specific rows of data More...
 
BoolResult resize (const ImagePlanGeometry &planGeometry)
 resize plan storage More...
 
void clear ()
 clear object data
 
virtual ipBool isDiskPlanStorage () const
 returns true if the plan storage is used for a disk image
 
 BasePlanStorage ()
 
virtual ~BasePlanStorage ()=0
 
const ImagePlanGeometrygetPlanGeometry () const
 retrieve geometry associated to storage More...
 
ipUInt64 getSizeX () const
 retrieve geometry plan x size More...
 
ipUInt64 getSizeY () const
 retrieve geometry plan y size More...
 
ipUInt64 getNbPixels () const
 retrieve number of pixels inside geometry More...
 
const eImageBufferTypegetBufferType () const
 retrieve image data type More...
 
virtual const void * getRowDataPtr (const ipUInt64 offsetY) const
 retrieve a row data pointer More...
 
virtual void * getRowDataPtr (const ipUInt64 offsetY)
 retrieve a row data pointer More...
 
BoolResult readRaw (const ipUInt64 startOffset, const ipUInt64 size, void *pData) const
 method allowing to read data from image storage More...
 
BoolResult readArea (const ipUInt64 areaStartOffsetX, const ipUInt64 areaSizeX, const ipUInt64 areaStartOffsetY, const BufferPtrColl &dataColl) const
 method allowing to read a rectangular area of data More...
 
BoolResult writeRaw (const ipUInt64 startOffset, const ipUInt64 size, const void *pData)
 method allowing to write data to image storage More...
 
BoolResult writeArea (const ipUInt64 areaStartOffsetX, const ipUInt64 areaSizeX, const ipUInt64 areaStartOffsetY, const BufferConstPtrColl &dataColl)
 method allowing to write a rectangular area of data More...
 
- Public Member Functions inherited from ipsdk::BaseObjectWithSkeleton
const eSklSrzModegetSerializationMode () const
 retrieve serialization flag for object More...
 
void setSerializationMode (const eSklSrzMode &sklSrzMode) const
 set serialization flag for object
 
 BaseObjectWithSkeleton ()
 
 ~BaseObjectWithSkeleton ()
 
- Public Member Functions inherited from ipsdk::BaseSerializationObject
 BaseSerializationObject ()
 Default constructor.
 
virtual ~BaseSerializationObject ()=0
 destructor
 
- Public Member Functions inherited from ipsdk::BaseDynamicObject
virtual const std::string & getClassName () const
 method allowing to retrieve object class name
 
virtual BaseDynamicObjectcreateNew () const =0
 method allowing to create new instance of current object type
 
virtual DynamicObjectPtr createShared () const =0
 method allowing to create new shared instance of current object type
 
virtual bool hasCopySupport () const =0
 check whether objet has copy support
 
virtual BaseDynamicObjectduplicate () const =0
 method allowing to duplicate current object More...
 
virtual DynamicObjectPtr duplicateShared () const =0
 method allowing shared duplication of current object More...
 
 BaseDynamicObject ()
 
virtual ~BaseDynamicObject ()=0
 

Static Public Attributes

static const ePlanStorageType::domain g_planStorageType = ePlanStorageType::ePST_Gpu
 plan storage type
 

Protected Member Functions

BoolResult resizePlan (const ImagePlanGeometry &geometry, const ipUInt64 deviceIdx=0)
 resize plan storage in derived class More...
 
BoolResult readRawData (const ipUInt64 startOffset, const ipUInt64 size, void *pData) const
 method allowing to read data from image storage More...
 
BoolResult writeRawData (const ipUInt64 startOffset, const ipUInt64 size, const void *pData)
 method allowing to write data to image storage More...
 
void clearPlanData ()
 clear plan data in derived class
 
- Protected Member Functions inherited from ipsdk::image::BasePlanStorage
void initBase (const ImagePlanGeometry &planGeometry)
 base class initialization method
 
virtual BoolResult readAreaData (const ipUInt64 areaStartOffsetX, const ipUInt64 areaSizeX, const ipUInt64 areaStartOffsetY, const BufferPtrColl &dataColl) const
 method allowing to read a rectangular area of data More...
 
virtual BoolResult writeAreaData (const ipUInt64 areaStartOffsetX, const ipUInt64 areaSizeX, const ipUInt64 areaStartOffsetY, const BufferConstPtrColl &dataColl)
 method allowing to write a rectangular area of data More...
 
- Protected Member Functions inherited from ipsdk::BaseSerializationObject
virtual BoolResult write (BaseOArchive &ar) const
 method allowing to ensure serialization write part for object
 
virtual BoolResult read (BaseIArchive &ar)
 method allowing to ensure serialization read part for object
 
- Protected Member Functions inherited from ipsdk::BaseDynamicObject
virtual void initCtorCopy (const BaseDynamicObject &object)
 
virtual void copy (const BaseDynamicObject &object)
 method allowing to copy data from another object
 

Protected Attributes

CudaBufferPtr _pBuffer
 buffer associated to storage
 
ipUInt64 _bufferBaseSize
 Element size (in Bytes)
 
ipUInt64 _deviceIdx
 Element size (in Bytes)
 
eDataType _dataType
 Data buffer type.
 
- Protected Attributes inherited from ipsdk::BaseObjectWithSkeleton
eSklSrzMode _sklSrzMode
 serialization flag for object More...
 

Additional Inherited Members

- Static Public Member Functions inherited from ipsdk::BaseSerializationObject
static ipUInt32 getVersion ()
 method allowing to retrieve class version information for serialization
 
- Static Public Member Functions inherited from ipsdk::BaseDynamicObject
static const std::string & getTypeName ()
 method allowing to retrieve name associated to class
 

Member Function Documentation

◆ init()

BoolResult ipsdk::image::CudaPlanStorage::init ( const ImagePlanGeometry geometry,
const ipUInt64  deviceIdx = 0 
)

storage initialization on a specified device

Returns
false in case of failure

◆ getAccessMode()

eImageAccessMode ipsdk::image::CudaPlanStorage::getAccessMode ( ) const
virtual

retrieve image access mode

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

Implements ipsdk::image::BasePlanStorage.

◆ getDataPtr() [1/2]

const void* ipsdk::image::CudaPlanStorage::getDataPtr ( ) const
virtual

retrieve data pointer

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

Reimplemented from ipsdk::image::BasePlanStorage.

◆ getDataPtr() [2/2]

void* ipsdk::image::CudaPlanStorage::getDataPtr ( )
virtual

retrieve data pointer

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

Reimplemented from ipsdk::image::BasePlanStorage.

◆ canBeRemotlyAccessed()

bool ipsdk::image::CudaPlanStorage::canBeRemotlyAccessed ( ) const
virtual

retrieve flag indicating whether data can be remotly accessed

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

Implements ipsdk::image::BasePlanStorage.

◆ hasBinary8BitsStorage()

bool ipsdk::image::CudaPlanStorage::hasBinary8BitsStorage ( ) const
virtual

method allowing to check whether image underlying storage stores binary data with a 8 bit alignment

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

Implements ipsdk::image::BasePlanStorage.

◆ getFullBufferSize()

ipUInt64 ipsdk::image::CudaPlanStorage::getFullBufferSize ( ) const
virtual

retrieve full buffer size

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

Reimplemented from ipsdk::image::BasePlanStorage.

◆ getBuffer() [1/2]

const CudaBuffer& ipsdk::image::CudaPlanStorage::getBuffer ( ) const

retrieve buffer associated to storage

Warning
buffer data must be interpreted with respect to image geometry
Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getBuffer() [2/2]

CudaBuffer& ipsdk::image::CudaPlanStorage::getBuffer ( )

retrieve buffer associated to storage

Warning
buffer data must be interpreted with respect to image geometry
Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ getDeviceIdx()

ipUInt64 ipsdk::image::CudaPlanStorage::getDeviceIdx ( ) const

Returns the device index on which the data is stored.

Exceptions
ipsdk::image::IPSDKImageExceptionif isInit() == false

◆ resizePlan() [1/2]

BoolResult ipsdk::image::CudaPlanStorage::resizePlan ( const ImagePlanGeometry planGeometry)
virtual

resize plan storage in derived class (not used, see the other prototype)

Returns
false in case of failure

Implements ipsdk::image::BasePlanStorage.

◆ resize()

BoolResult ipsdk::image::CudaPlanStorage::resize ( const ImagePlanGeometry geometry,
const ipUInt64  deviceIdx = 0 
)

resize plan storage overloaded

Returns
false in case of failure

◆ resizePlan() [2/2]

BoolResult ipsdk::image::CudaPlanStorage::resizePlan ( const ImagePlanGeometry geometry,
const ipUInt64  deviceIdx = 0 
)
protected

resize plan storage in derived class

Returns
false in case of failure

◆ readRawData()

BoolResult ipsdk::image::CudaPlanStorage::readRawData ( const ipUInt64  startOffset,
const ipUInt64  size,
void *  pData 
) const
protectedvirtual

method allowing to read data from image storage

Returns
false in case of failure

Implements ipsdk::image::BasePlanStorage.

◆ writeRawData()

BoolResult ipsdk::image::CudaPlanStorage::writeRawData ( const ipUInt64  startOffset,
const ipUInt64  size,
const void *  pData 
)
protectedvirtual

method allowing to write data to image storage

Exceptions
ipsdk::image::IPSDKImageExceptionif getAccessMode() == eImageAccessMode::eIAM_Read
Returns
false in case of failure

Implements ipsdk::image::BasePlanStorage.


The documentation for this class was generated from the following file: