Maps SDK for C++ 1.0.0
Loading...
Searching...
No Matches
gem::sense::ICamera Class Referenceabstract

Definition of CameraFrame interface. More...

Inheritance diagram for gem::sense::ICamera:
Collaboration diagram for gem::sense::ICamera:

Public Member Functions

virtual const CameraConfigurationgetCameraConfiguration () const =0
 Get the camera configuration.
virtual std::pair< const unsigned char *, size_t > getBuffer () const =0
 Get the direct buffer as uint8*, independent of platform.
virtual const void * getDirectBuffer () const =0
virtual EDirectBufferType getDirectBufferType () const =0
 Get direct buffer type.
EDataType getType () const override final
 Get data type.
virtual LargeInteger getAcquisitionTimestamp () const =0
Time getTime () const
template<typename TDerivedType>
StrongPointer< TDerivedType > cast ()
 Cast to a derived type.
virtual void * begin ()=0
 For Bitmap context: get the start address of the bitmap.
template<typename TAddr = void>
TAddr * beginType ()
 Reinterpret the start address of the bitmap.
virtual void end ()=0
 For Bitmap context: announce the bitmap's memory should be unlocked.
virtual Size size () const =0
 Get the size of the bitmap.
virtual int alignment () const =0
 Return the alignment in bytes of the bitmap's memory.
int stride () const
 Return the image stride size.
int memory () const
 Return the bitmap memory size.
virtual EImagePixelFormat encoding () const =0
 Get the encoding.
virtual Rect const & viewport () const =0
 Get the viewport rectangle associated with this rendering context.
virtual const void * getSystemContext () const
 Get the system rendering context (platform-dependent).

Static Public Member Functions

static bool isSameType (const IData *ptr)
 Check if two data elements have the same type.
static StrongPointer< class IAdjustableBitmapproduce (const Size &sz, EImagePixelFormat format)
 Create a default adjustable bitmap ( SDK impl ).

Detailed Description

Definition of CameraFrame interface.

Member Function Documentation

◆ alignment()

virtual int gem::IBitmap::alignment ( ) const
pure virtualinherited

Return the alignment in bytes of the bitmap's memory.

Common values: 1, 4, 8.

Returns
The alignment in bytes.

◆ begin()

virtual void * gem::IBitmap::begin ( )
pure virtualinherited

For Bitmap context: get the start address of the bitmap.

Announce the bitmap's memory should be locked.

Returns
The start address of the bitmap.

◆ beginType()

template<typename TAddr = void>
TAddr * gem::IBitmap::beginType ( )
inlineinherited

Reinterpret the start address of the bitmap.

Template Parameters
TAddrThe type of the address
Returns
The start address of the bitmap

◆ cast()

template<typename TDerivedType>
StrongPointer< TDerivedType > gem::sense::IData::cast ( )
inlineinherited

Cast to a derived type.

Returns
The requested derived type as a shared pointer.

◆ encoding()

virtual EImagePixelFormat gem::IRenderContext::encoding ( ) const
pure virtualinherited

Get the encoding.

Returns
The image pixel format.

◆ getAcquisitionTimestamp()

virtual LargeInteger gem::sense::IData::getAcquisitionTimestamp ( ) const
pure virtualinherited
Returns
Acquisition timestamp in milliseconds since 1970 ( epoch )

Implemented in gem::sense::MockPosition.

◆ getBuffer()

virtual std::pair< const unsigned char *, size_t > gem::sense::ICamera::getBuffer ( ) const
pure virtual

Get the direct buffer as uint8*, independent of platform.

Returns
Pair of buffer and size.

◆ getCameraConfiguration()

virtual const CameraConfiguration & gem::sense::ICamera::getCameraConfiguration ( ) const
pure virtual

Get the camera configuration.

Returns
A structure containing the camera configuration

◆ getDirectBuffer()

virtual const void * gem::sense::ICamera::getDirectBuffer ( ) const
pure virtual
Returns
A platform-dependent raw buffer. Android - jobject(ByteBuffer) APPLE - CVPixelBufferRef Windows - char* Linux - char*

◆ getDirectBufferType()

virtual EDirectBufferType gem::sense::ICamera::getDirectBufferType ( ) const
pure virtual

Get direct buffer type.

Returns
The type of the direct buffer.

◆ getSystemContext()

virtual const void * gem::IRenderContext::getSystemContext ( ) const
inlinevirtualinherited

Get the system rendering context (platform-dependent).

Returns
The system rendering context.

◆ getTime()

Time gem::sense::IData::getTime ( ) const
inlineinherited
Returns
System acquisition time

◆ getType()

EDataType gem::sense::IDataWithType< DerivedType >::getType ( ) const
inlinefinaloverridevirtualinherited

Get data type.

Returns
The data type.

Implements gem::sense::IData.

◆ isSameType()

bool gem::sense::IDataWithType< DerivedType >::isSameType ( const IData * ptr)
inlinestaticinherited

Check if two data elements have the same type.

Parameters
ptrThe other IData pointer to check against.
Returns
True if of same type, false if not.

◆ memory()

int gem::IBitmap::memory ( ) const
inlineinherited

Return the bitmap memory size.

Returns
The memory size

◆ produce()

StrongPointer< class IAdjustableBitmap > gem::IBitmap::produce ( const Size & sz,
EImagePixelFormat format )
staticinherited

Create a default adjustable bitmap ( SDK impl ).

Parameters
szThe size of the bitmap
formatThe pixel format of the bitmap
Returns
The adjustable bitmap object

◆ size()

virtual Size gem::IBitmap::size ( ) const
pure virtualinherited

Get the size of the bitmap.

Returns
The size of the bitmap

◆ stride()

int gem::IBitmap::stride ( ) const
inlineinherited

Return the image stride size.

Returns
The stride size

◆ viewport()

virtual Rect const & gem::IRenderContext::viewport ( ) const
pure virtualinherited

Get the viewport rectangle associated with this rendering context.

Returns
The viewport rectangle.