Simox  2.3.74.0
VirtualRobot::WorkspaceData Class Referenceabstract
Inheritance diagram for VirtualRobot::WorkspaceData:
VirtualRobot::WorkspaceDataArray

Public Member Functions

virtual ~WorkspaceData ()
 
virtual unsigned int getSizeTr () const =0
 Return the amount of data in bytes. More...
 
virtual unsigned int getSizeRot () const =0
 
virtual void setDatum (float x[], unsigned char value, const WorkspaceRepresentation *workspace)=0
 
virtual void setDatum (unsigned int x0, unsigned int x1, unsigned int x2, unsigned int x3, unsigned int x4, unsigned int x5, unsigned char value)=0
 
virtual void setDatum (unsigned int x[6], unsigned char value)=0
 
virtual void setDatumCheckNeighbors (unsigned int x[6], unsigned char value, unsigned int neighborVoxels)=0
 
virtual void increaseDatum (float x[], const WorkspaceRepresentation *workspace)=0
 
virtual void setDataRot (unsigned char *data, unsigned int x, unsigned int y, unsigned int z)=0
 
virtual const unsigned char * getDataRot (unsigned int x, unsigned int y, unsigned int z)=0
 
virtual bool hasEntry (unsigned int x, unsigned int y, unsigned int z)=0
 
virtual unsigned char get (float x[], const WorkspaceRepresentation *workspace)=0
 
virtual unsigned char get (unsigned int x0, unsigned int x1, unsigned int x2, unsigned int x3, unsigned int x4, unsigned int x5)=0
 Simulates a multi-dimensional array access. More...
 
virtual unsigned char get (unsigned int x[6])=0
 Simulates a multi-dimensional array access. More...
 
virtual void clear ()=0
 
virtual void binarize ()=0
 
virtual void bisectData ()=0
 
virtual unsigned int getSize (int dim)=0
 
virtual unsigned char ** getRawData ()=0
 
virtual WorkspaceDataclone ()=0
 
virtual bool save (std::ofstream &file)=0
 
virtual void setVoxelFilledCount (int c)
 
virtual unsigned char getMaxEntry ()
 
virtual void setMaxEntry (unsigned char m)
 
virtual unsigned int getVoxelFilledCount () const
 
virtual void setMinValidValue (unsigned char v)
 Min valid value is 1 by default. In cases some values are needed to indicate special flags (e.g. stability) the minimum valid number can be set here. More...
 
virtual void reset (int x, int y, int z)=0
 

Protected Attributes

unsigned char minValidValue
 
unsigned char maxEntry
 
unsigned int voxelFilledCount
 
bool adjustOnOverflow
 

Detailed Description

Stores a 6-dimensional array for the vertex data of a workspace representation. Internally unsigned char data types are used (0...255)

Constructor & Destructor Documentation

◆ ~WorkspaceData()

VirtualRobot::WorkspaceData::~WorkspaceData ( )
inlinevirtual

Member Function Documentation

◆ binarize()

void VirtualRobot::WorkspaceData::binarize ( )
pure virtual

◆ bisectData()

void VirtualRobot::WorkspaceData::bisectData ( )
pure virtual

◆ clear()

void VirtualRobot::WorkspaceData::clear ( )
pure virtual

◆ clone()

virtual WorkspaceData* VirtualRobot::WorkspaceData::clone ( )
pure virtual

◆ get() [1/3]

virtual unsigned char VirtualRobot::WorkspaceData::get ( float  x[],
const WorkspaceRepresentation workspace 
)
pure virtual

◆ get() [2/3]

virtual unsigned char VirtualRobot::WorkspaceData::get ( unsigned int  x0,
unsigned int  x1,
unsigned int  x2,
unsigned int  x3,
unsigned int  x4,
unsigned int  x5 
)
pure virtual

Simulates a multi-dimensional array access.

Implemented in VirtualRobot::WorkspaceDataArray.

◆ get() [3/3]

virtual unsigned char VirtualRobot::WorkspaceData::get ( unsigned int  x[6])
pure virtual

Simulates a multi-dimensional array access.

Implemented in VirtualRobot::WorkspaceDataArray.

◆ getDataRot()

const unsigned char * VirtualRobot::WorkspaceData::getDataRot ( unsigned int  x,
unsigned int  y,
unsigned int  z 
)
pure virtual

Get rotation data for given x,y,z position.

Implemented in VirtualRobot::WorkspaceDataArray.

◆ getMaxEntry()

unsigned char VirtualRobot::WorkspaceData::getMaxEntry ( )
inlinevirtual

◆ getRawData()

virtual unsigned char** VirtualRobot::WorkspaceData::getRawData ( )
pure virtual

◆ getSize()

virtual unsigned int VirtualRobot::WorkspaceData::getSize ( int  dim)
pure virtual

◆ getSizeRot()

unsigned int VirtualRobot::WorkspaceData::getSizeRot ( ) const
pure virtual

◆ getSizeTr()

unsigned int VirtualRobot::WorkspaceData::getSizeTr ( ) const
pure virtual

Return the amount of data in bytes.

Implemented in VirtualRobot::WorkspaceDataArray.

◆ getVoxelFilledCount()

unsigned int VirtualRobot::WorkspaceData::getVoxelFilledCount ( ) const
inlinevirtual

◆ hasEntry()

bool VirtualRobot::WorkspaceData::hasEntry ( unsigned int  x,
unsigned int  y,
unsigned int  z 
)
pure virtual

◆ increaseDatum()

virtual void VirtualRobot::WorkspaceData::increaseDatum ( float  x[],
const WorkspaceRepresentation workspace 
)
pure virtual

◆ reset()

virtual void VirtualRobot::WorkspaceData::reset ( int  x,
int  y,
int  z 
)
pure virtual

◆ save()

virtual bool VirtualRobot::WorkspaceData::save ( std::ofstream &  file)
pure virtual

◆ setDataRot()

void VirtualRobot::WorkspaceData::setDataRot ( unsigned char *  data,
unsigned int  x,
unsigned int  y,
unsigned int  z 
)
pure virtual

virtual void increaseDatum( unsigned int x0, unsigned int x1, unsigned int x2, unsigned int x3, unsigned int x4, unsigned int x5) = 0;

virtual void increaseDatum( unsigned int x[6] ) = 0;

Set rotation data for given x,y,z position.

Implemented in VirtualRobot::WorkspaceDataArray.

◆ setDatum() [1/3]

virtual void VirtualRobot::WorkspaceData::setDatum ( float  x[],
unsigned char  value,
const WorkspaceRepresentation workspace 
)
pure virtual

◆ setDatum() [2/3]

virtual void VirtualRobot::WorkspaceData::setDatum ( unsigned int  x0,
unsigned int  x1,
unsigned int  x2,
unsigned int  x3,
unsigned int  x4,
unsigned int  x5,
unsigned char  value 
)
pure virtual

◆ setDatum() [3/3]

virtual void VirtualRobot::WorkspaceData::setDatum ( unsigned int  x[6],
unsigned char  value 
)
pure virtual

◆ setDatumCheckNeighbors()

void VirtualRobot::WorkspaceData::setDatumCheckNeighbors ( unsigned int  x[6],
unsigned char  value,
unsigned int  neighborVoxels 
)
pure virtual

◆ setMaxEntry()

virtual void VirtualRobot::WorkspaceData::setMaxEntry ( unsigned char  m)
inlinevirtual

◆ setMinValidValue()

void VirtualRobot::WorkspaceData::setMinValidValue ( unsigned char  v)
inlinevirtual

Min valid value is 1 by default. In cases some values are needed to indicate special flags (e.g. stability) the minimum valid number can be set here.

◆ setVoxelFilledCount()

virtual void VirtualRobot::WorkspaceData::setVoxelFilledCount ( int  c)
inlinevirtual

Field Documentation

◆ adjustOnOverflow

bool VirtualRobot::WorkspaceData::adjustOnOverflow
protected

◆ maxEntry

unsigned char VirtualRobot::WorkspaceData::maxEntry
protected

◆ minValidValue

unsigned char VirtualRobot::WorkspaceData::minValidValue
protected

◆ voxelFilledCount

unsigned int VirtualRobot::WorkspaceData::voxelFilledCount
protected