Main MRPT website > C++ reference for MRPT 1.9.9
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Friends
mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase Struct Referenceabstract

Detailed Description

Virtual interface to all pixel-label information structs.

See CObservation3DRangeScan::pixelLabels

Definition at line 528 of file CObservation3DRangeScan.h.

#include <mrpt/obs/CObservation3DRangeScan.h>

Inheritance diagram for mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase:
Inheritance graph

Public Types

using Ptr = std::shared_ptr< TPixelLabelInfoBase >
 Used in CObservation3DRangeScan::pixelLabels. More...
 
typedef std::map< uint32_t, std::stringTMapLabelID2Name
 

Public Member Functions

const std::stringgetLabelName (unsigned int label_idx) const
 
void setLabelName (unsigned int label_idx, const std::string &name)
 
int checkLabelNameExistence (const std::string &name) const
 Check the existence of a label by returning its associated index. More...
 
virtual void setSize (const int NROWS, const int NCOLS)=0
 Resizes the matrix pixelLabels to the given size, setting all bitfields to zero (that is, all pixels are assigned NONE category). More...
 
virtual void setLabel (const int row, const int col, uint8_t label_idx)=0
 Mark the pixel(row,col) as classified in the category label_idx, which may be in the range 0 to MAX_NUM_LABELS-1 Note that 0 is a valid label index, it does not mean "no label". More...
 
virtual void getLabels (const int row, const int col, uint8_t &labels)=0
 
virtual void unsetLabel (const int row, const int col, uint8_t label_idx)=0
 For the pixel(row,col), removes its classification into the category label_idx, which may be in the range 0 to 7 Note that 0 is a valid label index, it does not mean "no label". More...
 
virtual void unsetAll (const int row, const int col, uint8_t label_idx)=0
 Removes all categories for pixel(row,col) More...
 
virtual bool checkLabel (const int row, const int col, uint8_t label_idx) const =0
 Checks whether pixel(row,col) has been clasified into category label_idx, which may be in the range 0 to 7. More...
 
void writeToStream (mrpt::utils::CStream &out) const
 
 TPixelLabelInfoBase (unsigned int BITFIELD_BYTES_)
 
virtual ~TPixelLabelInfoBase ()
 

Static Public Member Functions

static TPixelLabelInfoBasereadAndBuildFromStream (mrpt::utils::CStream &in)
 

Public Attributes

TMapLabelID2Name pixelLabelNames
 The 'semantic' or human-friendly name of the i'th bit in pixelLabels(r,c) can be found in pixelLabelNames[i] as a std::string. More...
 
const uint8_t BITFIELD_BYTES
 Minimum number of bytes required to hold MAX_NUM_DIFFERENT_LABELS bits. More...
 

Protected Member Functions

virtual void internal_readFromStream (mrpt::utils::CStream &in)=0
 
virtual void internal_writeToStream (mrpt::utils::CStream &out) const =0
 
virtual void Print (std::ostream &) const =0
 

Friends

std::ostream & operator<< (std::ostream &out, const TPixelLabelInfoBase &obj)
 std stream interface More...
 

Member Typedef Documentation

◆ Ptr

◆ TMapLabelID2Name

Definition at line 532 of file CObservation3DRangeScan.h.

Constructor & Destructor Documentation

◆ TPixelLabelInfoBase()

mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::TPixelLabelInfoBase ( unsigned int  BITFIELD_BYTES_)
inline

Definition at line 603 of file CObservation3DRangeScan.h.

◆ ~TPixelLabelInfoBase()

virtual mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::~TPixelLabelInfoBase ( )
inlinevirtual

Definition at line 608 of file CObservation3DRangeScan.h.

Member Function Documentation

◆ checkLabel()

virtual bool mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::checkLabel ( const int  row,
const int  col,
uint8_t  label_idx 
) const
pure virtual

Checks whether pixel(row,col) has been clasified into category label_idx, which may be in the range 0 to 7.

See also
unsetLabel, unsetAll

Implemented in mrpt::obs::CObservation3DRangeScan::TPixelLabelInfo< BYTES_REQUIRED_ >.

◆ checkLabelNameExistence()

int mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::checkLabelNameExistence ( const std::string name) const
inline

Check the existence of a label by returning its associated index.

-1 if it does not exist.

Definition at line 554 of file CObservation3DRangeScan.h.

References pixelLabelNames.

◆ getLabelName()

const std::string& mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::getLabelName ( unsigned int  label_idx) const
inline

Definition at line 539 of file CObservation3DRangeScan.h.

References pixelLabelNames.

◆ getLabels()

virtual void mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::getLabels ( const int  row,
const int  col,
uint8_t labels 
)
pure virtual

◆ internal_readFromStream()

virtual void mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::internal_readFromStream ( mrpt::utils::CStream in)
protectedpure virtual

Implemented in mrpt::obs::CObservation3DRangeScan::TPixelLabelInfo< BYTES_REQUIRED_ >.

Referenced by readAndBuildFromStream().

Here is the caller graph for this function:

◆ internal_writeToStream()

virtual void mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::internal_writeToStream ( mrpt::utils::CStream out) const
protectedpure virtual

Implemented in mrpt::obs::CObservation3DRangeScan::TPixelLabelInfo< BYTES_REQUIRED_ >.

Referenced by writeToStream().

Here is the caller graph for this function:

◆ Print()

virtual void mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::Print ( std::ostream &  ) const
protectedpure virtual

◆ readAndBuildFromStream()

CObservation3DRangeScan::TPixelLabelInfoBase * CObservation3DRangeScan::TPixelLabelInfoBase::readAndBuildFromStream ( mrpt::utils::CStream in)
static

Definition at line 1243 of file CObservation3DRangeScan.cpp.

References internal_readFromStream(), and MRPT_THROW_UNKNOWN_SERIALIZATION_VERSION.

Referenced by mrpt::obs::CObservation3DRangeScan::readFromStream().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setLabel()

virtual void mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::setLabel ( const int  row,
const int  col,
uint8_t  label_idx 
)
pure virtual

Mark the pixel(row,col) as classified in the category label_idx, which may be in the range 0 to MAX_NUM_LABELS-1 Note that 0 is a valid label index, it does not mean "no label".

See also
unsetLabel, unsetAll

Implemented in mrpt::obs::CObservation3DRangeScan::TPixelLabelInfo< BYTES_REQUIRED_ >.

◆ setLabelName()

void mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::setLabelName ( unsigned int  label_idx,
const std::string name 
)
inline

Definition at line 548 of file CObservation3DRangeScan.h.

References pixelLabelNames.

◆ setSize()

virtual void mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::setSize ( const int  NROWS,
const int  NCOLS 
)
pure virtual

Resizes the matrix pixelLabels to the given size, setting all bitfields to zero (that is, all pixels are assigned NONE category).

Implemented in mrpt::obs::CObservation3DRangeScan::TPixelLabelInfo< BYTES_REQUIRED_ >.

◆ unsetAll()

virtual void mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::unsetAll ( const int  row,
const int  col,
uint8_t  label_idx 
)
pure virtual

Removes all categories for pixel(row,col)

See also
setLabel, unsetLabel

Implemented in mrpt::obs::CObservation3DRangeScan::TPixelLabelInfo< BYTES_REQUIRED_ >.

◆ unsetLabel()

virtual void mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::unsetLabel ( const int  row,
const int  col,
uint8_t  label_idx 
)
pure virtual

For the pixel(row,col), removes its classification into the category label_idx, which may be in the range 0 to 7 Note that 0 is a valid label index, it does not mean "no label".

See also
setLabel, unsetAll

Implemented in mrpt::obs::CObservation3DRangeScan::TPixelLabelInfo< BYTES_REQUIRED_ >.

◆ writeToStream()

void CObservation3DRangeScan::TPixelLabelInfoBase::writeToStream ( mrpt::utils::CStream out) const

Definition at line 1227 of file CObservation3DRangeScan.cpp.

References BITFIELD_BYTES, and internal_writeToStream().

Here is the call graph for this function:

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  out,
const TPixelLabelInfoBase obj 
)
friend

std stream interface

Definition at line 596 of file CObservation3DRangeScan.h.

Member Data Documentation

◆ BITFIELD_BYTES

const uint8_t mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::BITFIELD_BYTES

Minimum number of bytes required to hold MAX_NUM_DIFFERENT_LABELS bits.

Definition at line 611 of file CObservation3DRangeScan.h.

Referenced by writeToStream().

◆ pixelLabelNames

TMapLabelID2Name mrpt::obs::CObservation3DRangeScan::TPixelLabelInfoBase::pixelLabelNames



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: ae4571287 Thu Nov 23 00:06:53 2017 +0100 at dom oct 27 23:51:55 CET 2019