Visual Servoing Platform  version 3.1.0
vpMbtEdgeKltXmlParser Class Reference

#include <visp3/mbt/vpMbtEdgeKltXmlParser.h>

+ Inheritance diagram for vpMbtEdgeKltXmlParser:

Public Member Functions

 vpMbtEdgeKltXmlParser ()
 
virtual ~vpMbtEdgeKltXmlParser ()
 
void parse (const char *filename)
 
virtual void readMainClass (xmlDocPtr doc, xmlNodePtr node)
 
void writeMainClass (xmlNodePtr node)
 
Public Member Functions Inherited from vpMbtXmlParser
void getMe (vpMe &_ecm) const
 
void read_ecm (xmlDocPtr doc, xmlNodePtr node)
 
void read_sample (xmlDocPtr doc, xmlNodePtr node)
 
void read_sample_deprecated (xmlDocPtr doc, xmlNodePtr node)
 
void read_mask (xmlDocPtr doc, xmlNodePtr node)
 
void read_range (xmlDocPtr doc, xmlNodePtr node)
 
void read_contrast (xmlDocPtr doc, xmlNodePtr node)
 
void setMovingEdge (const vpMe &_ecm)
 
Public Member Functions Inherited from vpXmlParser
void parse (const std::string &filename)
 
void save (const std::string &filename, const bool append=false)
 
void setMap (const std::map< std::string, int > &_map)
 
void setMainTag (const std::string &tag)
 
Public Member Functions Inherited from vpMbXmlParser
double getAngleAppear () const
 
double getAngleDisappear () const
 
void getCameraParameters (vpCameraParameters &_cam) const
 
double getFarClippingDistance () const
 
bool getFovClipping () const
 
bool getLodState () const
 
double getMinLineLengthThreshold () const
 
double getMinPolygonAreaThreshold () const
 
double getNearClippingDistance () const
 
bool hasFarClippingDistance () const
 
bool hasNearClippingDistance () const
 
void read_camera (xmlDocPtr doc, xmlNodePtr node)
 
void read_face (xmlDocPtr doc, xmlNodePtr node)
 
void read_lod (xmlDocPtr doc, xmlNodePtr node)
 
void setAngleAppear (const double &aappear)
 
void setAngleDisappear (const double &adisappear)
 
void setCameraParameters (const vpCameraParameters &_cam)
 
void setFarClippingDistance (const double &fclip)
 
void setNearClippingDistance (const double &nclip)
 
Public Member Functions Inherited from vpMbtKltXmlParser
unsigned int getBlockSize () const
 
double getHarrisParam () const
 
unsigned int getMaskBorder () const
 
unsigned int getMaxFeatures () const
 
double getMinDistance () const
 
unsigned int getPyramidLevels () const
 
double getQuality () const
 
unsigned int getWindowSize () const
 
void read_klt (xmlDocPtr doc, xmlNodePtr node)
 
void setBlockSize (const unsigned int &bs)
 
void setHarrisParam (const double &hp)
 
void setMaskBorder (const unsigned int &mb)
 
void setMaxFeatures (const unsigned int &mF)
 
void setMinDistance (const double &mD)
 
void setPyramidLevels (const unsigned int &pL)
 
void setQuality (const double &q)
 
void setWindowSize (const unsigned int &w)
 

Static Public Member Functions

Static Public Member Functions Inherited from vpXmlParser
static void cleanup ()
 

Protected Types

enum  dataToParseMbtEdgeKlt {
  camera, face, klt, ecm,
  lod
}
 
enum  dataToParseMb {
  ecm = vpMbXmlParser::last, mask, size, nb_mask,
  range, tracking, contrast, edge_threshold,
  mu1, mu2, sample, step,
  last
}
 
enum  dataToParseMbKlt {
  klt = vpMbXmlParser::last, mask_border, max_features, window_size,
  quality, min_distance, harris, size_block,
  pyramid_lvl, last
}
 

Protected Member Functions

void init ()
 
Protected Member Functions Inherited from vpXmlParser
bool xmlReadBoolChild (xmlDocPtr doc, xmlNodePtr node)
 
char * xmlReadCharChild (xmlDocPtr doc, xmlNodePtr node)
 
double xmlReadDoubleChild (xmlDocPtr doc, xmlNodePtr node)
 
float xmlReadFloatChild (xmlDocPtr doc, xmlNodePtr node)
 
int xmlReadIntChild (xmlDocPtr doc, xmlNodePtr node)
 
std::string xmlReadStringChild (xmlDocPtr doc, xmlNodePtr node)
 
unsigned int xmlReadUnsignedIntChild (xmlDocPtr doc, xmlNodePtr node)
 
void xmlWriteBoolChild (xmlNodePtr node, const char *label, const bool value)
 
void xmlWriteCharChild (xmlNodePtr node, const char *label, const char *value)
 
void xmlWriteDoubleChild (xmlNodePtr node, const char *label, const double value)
 
void xmlWriteFloatChild (xmlNodePtr node, const char *label, const float value)
 
void xmlWriteIntChild (xmlNodePtr node, const char *label, const int value)
 
void xmlWriteStringChild (xmlNodePtr node, const char *label, const std::string &value)
 
void xmlWriteUnsignedIntChild (xmlNodePtr node, const char *label, const unsigned int value)
 

Protected Attributes

vpMe m_ecm
 
vpCameraParameters cam
 
double angleAppear
 
double angleDisappear
 
bool hasNearClipping
 
double nearClipping
 
bool hasFarClipping
 
double farClipping
 
bool fovClipping
 
bool useLod
 
double minLineLengthThreshold
 
double minPolygonAreaThreshold
 
std::map< std::string, int > nodeMap
 
std::string main_tag
 
unsigned int maskBorder
 
unsigned int maxFeatures
 
unsigned int winSize
 
double qualityValue
 
double minDist
 
double harrisParam
 
unsigned int blockSize
 
unsigned int pyramidLevels
 

Detailed Description

Parse an Xml file to extract configuration parameters of a mbtConfig object.

Data parser for the model based tracker.

Definition at line 66 of file vpMbtEdgeKltXmlParser.h.

Member Enumeration Documentation

◆ dataToParseMb

enum vpMbtXmlParser::dataToParseMb
protectedinherited
Enumerator
ecm 
mask 
size 
nb_mask 
range 
tracking 
contrast 
edge_threshold 
mu1 
mu2 
sample 
step 
last 

Definition at line 71 of file vpMbtXmlParser.h.

◆ dataToParseMbKlt

enum vpMbtKltXmlParser::dataToParseMbKlt
protectedinherited
Enumerator
klt 
mask_border 
max_features 
window_size 
quality 
min_distance 
harris 
size_block 
pyramid_lvl 
last 

Definition at line 83 of file vpMbtKltXmlParser.h.

◆ dataToParseMbtEdgeKlt

Enumerator
camera 
face 
klt 
ecm 
lod 

Definition at line 69 of file vpMbtEdgeKltXmlParser.h.

Constructor & Destructor Documentation

◆ vpMbtEdgeKltXmlParser()

vpMbtEdgeKltXmlParser::vpMbtEdgeKltXmlParser ( )

Default constructor.

Definition at line 54 of file vpMbtEdgeKltXmlParser.cpp.

References init().

◆ ~vpMbtEdgeKltXmlParser()

vpMbtEdgeKltXmlParser::~vpMbtEdgeKltXmlParser ( )
virtual

Default destructor.

Definition at line 59 of file vpMbtEdgeKltXmlParser.cpp.

Member Function Documentation

◆ cleanup()

static void vpXmlParser::cleanup ( )
inlinestaticinherited

As stated in http://xmlsoft.org/html/libxml-parser.html#xmlCleanupParser to clean up memory allocated by the xml2 library itself, the user should call xmlCleanupParser() only when the process has finished using the xml2 library. In case of doubt abstain from calling this function or do it just before calling exit() to avoid leak reports from valgrind ! That's why in ViSP the destructor doesn't call xmlCleanupParser(). Rather we provide the static function vpXmlParser::cleanup() that calls xmlCleanupParser() that could be called just before exit().

Examples:
mbtEdgeKltMultiTracking.cpp, mbtEdgeKltTracking.cpp, mbtEdgeMultiTracking.cpp, mbtEdgeTracking.cpp, mbtGenericTracking.cpp, mbtGenericTracking2.cpp, mbtGenericTrackingDepth.cpp, mbtKltMultiTracking.cpp, mbtKltTracking.cpp, testXmlParser.cpp, tutorial-detection-object-mbt.cpp, tutorial-detection-object-mbt2.cpp, tutorial-mb-edge-tracker.cpp, tutorial-mb-hybrid-tracker.cpp, tutorial-mb-klt-tracker.cpp, and tutorial-mb-tracker-full.cpp.

Definition at line 310 of file vpXmlParser.h.

◆ getAngleAppear()

double vpMbXmlParser::getAngleAppear ( ) const
inlineinherited

Get the angle to determine if a face appeared.

Returns
angleAppear

Definition at line 124 of file vpMbXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), vpMbKltTracker::loadConfigFile(), and vpMbEdgeTracker::loadConfigFile().

◆ getAngleDisappear()

double vpMbXmlParser::getAngleDisappear ( ) const
inlineinherited

Get the angle to determine if a face disappeared.

Returns
angleDisappear

Definition at line 131 of file vpMbXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), vpMbKltTracker::loadConfigFile(), and vpMbEdgeTracker::loadConfigFile().

◆ getBlockSize()

unsigned int vpMbtKltXmlParser::getBlockSize ( ) const
inlineinherited

Get the size of a block.

Returns
blockSize

Definition at line 107 of file vpMbtKltXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ getCameraParameters()

void vpMbXmlParser::getCameraParameters ( vpCameraParameters _cam) const
inlineinherited

◆ getFarClippingDistance()

double vpMbXmlParser::getFarClippingDistance ( ) const
inlineinherited

Get the far clipping distance.

Returns
farClipping

Definition at line 140 of file vpMbXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), vpMbKltTracker::loadConfigFile(), and vpMbEdgeTracker::loadConfigFile().

◆ getFovClipping()

bool vpMbXmlParser::getFovClipping ( ) const
inlineinherited

Use FOV clipping

Returns
True if yes, False otherwise.

Definition at line 147 of file vpMbXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), vpMbKltTracker::loadConfigFile(), and vpMbEdgeTracker::loadConfigFile().

◆ getHarrisParam()

double vpMbtKltXmlParser::getHarrisParam ( ) const
inlineinherited

Get the Harris free parameter.

Returns
harrisParam

Definition at line 114 of file vpMbtKltXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ getLodState()

bool vpMbXmlParser::getLodState ( ) const
inlineinherited

Get the state of LOD setting.

Returns
True if LOD is enabled, false otherwise.

Definition at line 154 of file vpMbXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), vpMbKltTracker::loadConfigFile(), and vpMbEdgeTracker::loadConfigFile().

◆ getMaskBorder()

unsigned int vpMbtKltXmlParser::getMaskBorder ( ) const
inlineinherited

Get the Border of the mask.

Returns
faceBorder

Definition at line 121 of file vpMbtKltXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ getMaxFeatures()

unsigned int vpMbtKltXmlParser::getMaxFeatures ( ) const
inlineinherited

Get the maximum number of features for the KLT.

Returns
maxFeatures

Definition at line 128 of file vpMbtKltXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ getMe()

void vpMbtXmlParser::getMe ( vpMe _ecm) const
inlineinherited

◆ getMinDistance()

double vpMbtKltXmlParser::getMinDistance ( ) const
inlineinherited

Get the minimum distance between KLT points.

Returns
minDist

Definition at line 135 of file vpMbtKltXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ getMinLineLengthThreshold()

double vpMbXmlParser::getMinLineLengthThreshold ( ) const
inlineinherited

Get the minimum line length to track a segment when LOD is enabled.

Returns
The minimum line length.

Definition at line 161 of file vpMbXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), vpMbKltTracker::loadConfigFile(), and vpMbEdgeTracker::loadConfigFile().

◆ getMinPolygonAreaThreshold()

double vpMbXmlParser::getMinPolygonAreaThreshold ( ) const
inlineinherited

Get the minimum polygon area to track a face when LOD is enabled.

Returns
The minimum polygon area.

Definition at line 168 of file vpMbXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), vpMbKltTracker::loadConfigFile(), and vpMbEdgeTracker::loadConfigFile().

◆ getNearClippingDistance()

double vpMbXmlParser::getNearClippingDistance ( ) const
inlineinherited

Get the near clipping distance.

Returns
nearClipping

Definition at line 175 of file vpMbXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), vpMbKltTracker::loadConfigFile(), and vpMbEdgeTracker::loadConfigFile().

◆ getPyramidLevels()

unsigned int vpMbtKltXmlParser::getPyramidLevels ( ) const
inlineinherited

Get the number of pyramid levels

Returns
pyramidLevels

Definition at line 142 of file vpMbtKltXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ getQuality()

double vpMbtKltXmlParser::getQuality ( ) const
inlineinherited

Get the quality of the KLT.

Returns
quality

Definition at line 149 of file vpMbtKltXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ getWindowSize()

unsigned int vpMbtKltXmlParser::getWindowSize ( ) const
inlineinherited

Get the size of the window used in the KLT tracker.

Returns
winSize

Definition at line 156 of file vpMbtKltXmlParser.h.

References vpMbXmlParser::parse(), and vpMbXmlParser::readMainClass().

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ hasFarClippingDistance()

bool vpMbXmlParser::hasFarClippingDistance ( ) const
inlineinherited

Has Far clipping been specified?

Returns
True if yes, False otherwise.

Definition at line 182 of file vpMbXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), vpMbKltTracker::loadConfigFile(), and vpMbEdgeTracker::loadConfigFile().

◆ hasNearClippingDistance()

bool vpMbXmlParser::hasNearClippingDistance ( ) const
inlineinherited

Has Near clipping been specified?

Returns
True if yes, False otherwise.

Definition at line 189 of file vpMbXmlParser.h.

References vpXmlParser::parse(), and vpXmlParser::readMainClass().

Referenced by vpMbEdgeKltTracker::loadConfigFile(), vpMbKltTracker::loadConfigFile(), and vpMbEdgeTracker::loadConfigFile().

◆ init()

void vpMbtEdgeKltXmlParser::init ( void  )
protected

Initialise internal variables (including the map).

Definition at line 64 of file vpMbtEdgeKltXmlParser.cpp.

References camera, ecm, face, vpMbtXmlParser::init(), vpMbtKltXmlParser::init(), klt, lod, and vpXmlParser::nodeMap.

Referenced by vpMbtEdgeKltXmlParser().

◆ parse() [1/2]

void vpMbtEdgeKltXmlParser::parse ( const char *  filename)

Parse the file in parameters. This method is deprecated, use parse() instead.

Parameters
filename: File to parse.

Definition at line 82 of file vpMbtEdgeKltXmlParser.cpp.

References vpXmlParser::parse().

Referenced by vpMbEdgeKltTracker::loadConfigFile().

◆ parse() [2/2]

void vpXmlParser::parse ( const std::string &  filename)
inherited

parse the document. The data in the file are stored in the attributes of the child class. This method calls the readMainClass method which has to be implemented for every child class depending on the content to parse.

Parameters
filename: name of the file to parse

Definition at line 421 of file vpXmlParser.cpp.

References vpException::ioError, vpXmlParser::readMainClass(), and vpERROR_TRACE.

Referenced by vpXmlParserHomogeneousMatrix::getHomogeneousMatrixName(), vpXmlConfigParserKeyPoint::getUseRansacVVSPoseEstimation(), vpXmlParserCamera::getWidth(), vpMbXmlParser::hasNearClippingDistance(), vpMbtXmlGenericParser::hasNearClippingDistance(), parse(), vpMbtXmlParser::parse(), vpMbtKltXmlParser::parse(), vpMbXmlParser::parse(), vpXmlConfigParserKeyPoint::parse(), and vpMbtXmlGenericParser::parse().

◆ read_camera()

void vpMbXmlParser::read_camera ( xmlDocPtr  doc,
xmlNodePtr  node 
)
inherited

◆ read_contrast()

void vpMbtXmlParser::read_contrast ( xmlDocPtr  doc,
xmlNodePtr  node 
)
inherited

Read the contrast information from the xml file.

Exceptions
vpException::fatalErrorif there was an unexpected number of data.
Parameters
doc: Pointer to the document.
node: Pointer to the node of the contrast information.

Definition at line 454 of file vpMbtXmlParser.cpp.

References vpMbtXmlParser::edge_threshold, vpMe::getMu1(), vpMe::getMu2(), vpMe::getThreshold(), vpMbtXmlParser::m_ecm, vpMbtXmlParser::mu1, vpMbtXmlParser::mu2, vpXmlParser::nodeMap, vpMe::setMu1(), vpMe::setMu2(), vpMe::setThreshold(), and vpXmlParser::xmlReadDoubleChild().

Referenced by vpMbtXmlParser::read_ecm().

◆ read_ecm()

void vpMbtXmlParser::read_ecm ( xmlDocPtr  doc,
xmlNodePtr  node 
)
inherited

◆ read_face()

◆ read_klt()

◆ read_lod()

◆ read_mask()

void vpMbtXmlParser::read_mask ( xmlDocPtr  doc,
xmlNodePtr  node 
)
inherited

Read mask information for the vpMeSite.

Exceptions
vpException::fatalErrorif there was an unexpected number of data.
Parameters
doc: Pointer to the document.
node: Pointer to the node of the mask information.

Definition at line 355 of file vpMbtXmlParser.cpp.

References vpException::badValue, vpMe::getMaskNumber(), vpMe::getMaskSize(), vpMbtXmlParser::m_ecm, vpMbtXmlParser::nb_mask, vpXmlParser::nodeMap, vpMe::setMaskNumber(), vpMe::setMaskSize(), vpMbtXmlParser::size, and vpXmlParser::xmlReadUnsignedIntChild().

Referenced by vpMbtXmlParser::read_ecm().

◆ read_range()

void vpMbtXmlParser::read_range ( xmlDocPtr  doc,
xmlNodePtr  node 
)
inherited

Read range information for the vpMeSite.

Exceptions
vpException::fatalErrorif there was an unexpected number of data.
Parameters
doc: Pointer to the document.
node: Pointer to the node of the range information.

Definition at line 413 of file vpMbtXmlParser.cpp.

References vpMe::getRange(), vpMbtXmlParser::m_ecm, vpXmlParser::nodeMap, vpMe::setRange(), vpMbtXmlParser::tracking, and vpXmlParser::xmlReadUnsignedIntChild().

Referenced by vpMbtXmlParser::read_ecm().

◆ read_sample()

void vpMbtXmlParser::read_sample ( xmlDocPtr  doc,
xmlNodePtr  node 
)
inherited

Read sample information.

Exceptions
vpException::fatalErrorif there was an unexpected number of data.
Parameters
doc: Pointer to the document.
node: Pointer to the node of the sample information.

Definition at line 255 of file vpMbtXmlParser.cpp.

References vpMe::getSampleStep(), vpMbtXmlParser::m_ecm, vpXmlParser::nodeMap, vpMe::setSampleStep(), vpMbtXmlParser::step, and vpXmlParser::xmlReadIntChild().

Referenced by vpMbtXmlParser::read_ecm().

◆ read_sample_deprecated()

void vpMbtXmlParser::read_sample_deprecated ( xmlDocPtr  doc,
xmlNodePtr  node 
)
inherited

Read sample information.

Exceptions
vpException::fatalErrorif there was an unexpected number of data.
Parameters
doc: Pointer to the document.
node: Pointer to the node of the sample information.

Definition at line 297 of file vpMbtXmlParser.cpp.

References vpMe::getSampleStep(), vpMbtXmlParser::m_ecm, vpXmlParser::nodeMap, vpMe::setSampleStep(), vpMbtXmlParser::step, and vpXmlParser::xmlReadIntChild().

Referenced by readMainClass(), and vpMbtXmlParser::readMainClass().

◆ readMainClass()

◆ save()

void vpXmlParser::save ( const std::string &  filename,
const bool  append = false 
)
inherited

Save the content of the class in the file given in parameters. The data of the class are in the child class. This method calls the write_main_class method which has to be implemented for every class depending on the data to save.

Parameters
filename: the name of the file used to record the data
append: if true and if the file exists, the data will be added to the data already in the file

Definition at line 453 of file vpXmlParser.cpp.

References vpException::ioError, vpXmlParser::main_tag, vpERROR_TRACE, and vpXmlParser::writeMainClass().

Referenced by vpXmlParserHomogeneousMatrix::getHomogeneousMatrixName(), and vpXmlParserCamera::getWidth().

◆ setAngleAppear()

void vpMbXmlParser::setAngleAppear ( const double &  aappear)
inlineinherited

Set the angle to determine if a face appeared.

Parameters
aappear: New angleAppear

Definition at line 203 of file vpMbXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), vpMbKltTracker::loadConfigFile(), and vpMbEdgeTracker::loadConfigFile().

◆ setAngleDisappear()

void vpMbXmlParser::setAngleDisappear ( const double &  adisappear)
inlineinherited

Set the angle to determine if a face disappeared.

Parameters
adisappear: New angleDisappear

Definition at line 210 of file vpMbXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), vpMbKltTracker::loadConfigFile(), and vpMbEdgeTracker::loadConfigFile().

◆ setBlockSize()

void vpMbtKltXmlParser::setBlockSize ( const unsigned int &  bs)
inlineinherited

Set the size of a block.

Parameters
bs: New blockSize

Definition at line 168 of file vpMbtKltXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ setCameraParameters()

void vpMbXmlParser::setCameraParameters ( const vpCameraParameters _cam)
inlineinherited

◆ setFarClippingDistance()

void vpMbXmlParser::setFarClippingDistance ( const double &  fclip)
inlineinherited

Set the far clipping distance.

Parameters
fclip: New farClipping

Definition at line 219 of file vpMbXmlParser.h.

◆ setHarrisParam()

void vpMbtKltXmlParser::setHarrisParam ( const double &  hp)
inlineinherited

Set the Harris free parameter.

Parameters
hp: New harrisParam

Definition at line 175 of file vpMbtKltXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ setMainTag()

void vpXmlParser::setMainTag ( const std::string &  tag)
inlineinherited

set the name of the main tag

The main tag corresponds to the name of the root node

Parameters
tag: name of the root node of the document

Definition at line 295 of file vpXmlParser.h.

Referenced by vpMbXmlParser::init(), vpMbtXmlGenericParser::init(), and vpXmlConfigParserKeyPoint::vpXmlConfigParserKeyPoint().

◆ setMap()

void vpXmlParser::setMap ( const std::map< std::string, int > &  _map)
inlineinherited

Set the map describing the data to parse. This map stores the name of each node and an associated key used to simplify the parsing of the file.

If the following file want to be parsed:

<config>
<range>5</range>
<step>7</step>
<size_filter>3</size_filter>
</config>

The following map has to be declared:

std::map dataToParse;
dataToParse["config"] = 0;
dataToParse["range"] = 1;
dataToParse["step"] = 2;
dataToParse["size_filter"] = 3;

Or, you can use keyzord instead of number as key but it implies to declare in the child class an enumeration type of the name. For example:

typedef enum{
config,
size_filter} data_enum;
std::map dataToParse;
dataToParse["config"] = config;
dataToParse["range"] = range;
dataToParse["step"] = step;
dataToParse["size_filter"] = size_filter;
Parameters
_map: the map describing the data to parse

Definition at line 286 of file vpXmlParser.h.

◆ setMaskBorder()

void vpMbtKltXmlParser::setMaskBorder ( const unsigned int &  mb)
inlineinherited

Set the Border of the mask.

Parameters
mb= new maskBorder

Definition at line 182 of file vpMbtKltXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ setMaxFeatures()

void vpMbtKltXmlParser::setMaxFeatures ( const unsigned int &  mF)
inlineinherited

Set the maximum number of features for the KLT.

Parameters
mF: New maxFeatures

Definition at line 189 of file vpMbtKltXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ setMinDistance()

void vpMbtKltXmlParser::setMinDistance ( const double &  mD)
inlineinherited

Set the minimum distance between KLT points.

Parameters
mD: New minDist

Definition at line 196 of file vpMbtKltXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ setMovingEdge()

void vpMbtXmlParser::setMovingEdge ( const vpMe _ecm)
inlineinherited

◆ setNearClippingDistance()

void vpMbXmlParser::setNearClippingDistance ( const double &  nclip)
inlineinherited

Set the near clipping distance.

Parameters
nclip: New nearClipping

Definition at line 226 of file vpMbXmlParser.h.

References vpXmlParser::writeMainClass().

◆ setPyramidLevels()

void vpMbtKltXmlParser::setPyramidLevels ( const unsigned int &  pL)
inlineinherited

Set the number of pyramid levels

Parameters
pL: New pyramidLevels

Definition at line 203 of file vpMbtKltXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ setQuality()

void vpMbtKltXmlParser::setQuality ( const double &  q)
inlineinherited

Set the quality of the KLT.

Parameters
q: New quality

Definition at line 210 of file vpMbtKltXmlParser.h.

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ setWindowSize()

void vpMbtKltXmlParser::setWindowSize ( const unsigned int &  w)
inlineinherited

Set the size of the window used in the KLT tracker.

Parameters
w: New winSize

Definition at line 217 of file vpMbtKltXmlParser.h.

References vpMbXmlParser::init(), and vpMbXmlParser::writeMainClass().

Referenced by vpMbEdgeKltTracker::loadConfigFile(), and vpMbKltTracker::loadConfigFile().

◆ writeMainClass()

void vpMbtEdgeKltXmlParser::writeMainClass ( xmlNodePtr  node)
virtual

Write info to file.

Warning
Useless, so not yet implemented => Throw exception.

Implements vpXmlParser.

Definition at line 93 of file vpMbtEdgeKltXmlParser.cpp.

References vpException::notImplementedError.

◆ xmlReadBoolChild()

bool vpXmlParser::xmlReadBoolChild ( xmlDocPtr  doc,
xmlNodePtr  node 
)
protectedinherited

read a boolean

Warning
throw a vpException::ioError if the value cannot be parsed to a bool
Parameters
doc: The main xml document
node: a pointer to the node to read value
Returns
the bool value in the node

Definition at line 282 of file vpXmlParser.cpp.

References vpException::fatalError.

◆ xmlReadCharChild()

char * vpXmlParser::xmlReadCharChild ( xmlDocPtr  doc,
xmlNodePtr  node 
)
protectedinherited

Read an array of character.

Warning
The array of characters is allocated and must be explicitly freed to avoid memory leak.
Parameters
doc: The main xml document
node: a pointer to the node to read value
Returns
pointer to an allocated array of character.

Definition at line 100 of file vpXmlParser.cpp.

References vpException::fatalError.

Referenced by vpXmlParserHomogeneousMatrix::save(), and vpXmlParserCamera::save().

◆ xmlReadDoubleChild()

double vpXmlParser::xmlReadDoubleChild ( xmlDocPtr  doc,
xmlNodePtr  node 
)
protectedinherited

◆ xmlReadFloatChild()

float vpXmlParser::xmlReadFloatChild ( xmlDocPtr  doc,
xmlNodePtr  node 
)
protectedinherited

read a float

Warning
throw a vpException::ioError if the value cannot be parsed to a float
Parameters
doc: The main xml document
node: a pointer to the node to read value
Returns
the float value in the node

Definition at line 245 of file vpXmlParser.cpp.

References vpException::fatalError, and vpException::ioError.

◆ xmlReadIntChild()

int vpXmlParser::xmlReadIntChild ( xmlDocPtr  doc,
xmlNodePtr  node 
)
protectedinherited

◆ xmlReadStringChild()

std::string vpXmlParser::xmlReadStringChild ( xmlDocPtr  doc,
xmlNodePtr  node 
)
protectedinherited

Read an array of character.

Parameters
doc: The main xml document
node: a pointer to the node to read value
Returns
std::string representing the value.
Examples:
testXmlParser.cpp.

Definition at line 120 of file vpXmlParser.cpp.

References vpException::fatalError.

Referenced by vpXmlConfigParserKeyPoint::parse().

◆ xmlReadUnsignedIntChild()

unsigned int vpXmlParser::xmlReadUnsignedIntChild ( xmlDocPtr  doc,
xmlNodePtr  node 
)
protectedinherited

read an int

Warning
throw a vpException::ioError if the value cannot be parsed to an unsigned integer
Parameters
doc: The main xml document
node: a pointer to the node to read value
Returns
the unsigned integer value in the node

Definition at line 178 of file vpXmlParser.cpp.

References vpException::fatalError, and vpException::ioError.

Referenced by vpMbtXmlGenericParser::read_depth_dense_sampling_step(), vpMbtXmlGenericParser::read_depth_normal_sampling_step(), vpMbtXmlGenericParser::read_ecm_mask(), vpMbtXmlGenericParser::read_ecm_range(), vpMbtKltXmlParser::read_klt(), vpMbtXmlGenericParser::read_klt(), vpMbtXmlParser::read_mask(), vpMbtXmlParser::read_range(), and vpXmlParserCamera::save().

◆ xmlWriteBoolChild()

void vpXmlParser::xmlWriteBoolChild ( xmlNodePtr  node,
const char *  label,
const bool  value 
)
protectedinherited

write a bool.

Parameters
node: a pointer to the node to read value
label: label (name of the data) of the node
value: boolean to write (true or false)

Definition at line 398 of file vpXmlParser.cpp.

◆ xmlWriteCharChild()

void vpXmlParser::xmlWriteCharChild ( xmlNodePtr  node,
const char *  label,
const char *  value 
)
protectedinherited

write an array of character.

Parameters
node: a pointer to the node to read value
label: label (name of the data) of the node
value: pointer to the array of character to write
Examples:
testXmlParser.cpp.

Definition at line 306 of file vpXmlParser.cpp.

◆ xmlWriteDoubleChild()

void vpXmlParser::xmlWriteDoubleChild ( xmlNodePtr  node,
const char *  label,
const double  value 
)
protectedinherited

write a double.

Parameters
node: a pointer to the node to read value
label: label (name of the data) of the node
value: double to write
Examples:
testXmlParser.cpp.

Definition at line 366 of file vpXmlParser.cpp.

◆ xmlWriteFloatChild()

void vpXmlParser::xmlWriteFloatChild ( xmlNodePtr  node,
const char *  label,
const float  value 
)
protectedinherited

write a float.

Parameters
node: a pointer to the node to read value
label: label (name of the data) of the node
value: float to write

Definition at line 382 of file vpXmlParser.cpp.

◆ xmlWriteIntChild()

void vpXmlParser::xmlWriteIntChild ( xmlNodePtr  node,
const char *  label,
const int  value 
)
protectedinherited

write an integer.

Parameters
node: a pointer to the node to read value
label: label (name of the data) of the node
value: integer to write
Examples:
testXmlParser.cpp.

Definition at line 334 of file vpXmlParser.cpp.

◆ xmlWriteStringChild()

void vpXmlParser::xmlWriteStringChild ( xmlNodePtr  node,
const char *  label,
const std::string &  value 
)
protectedinherited

write an array of character.

Parameters
node: a pointer to the node to read value
label: label (name of the data) of the node
value: std::string to write;

Definition at line 320 of file vpXmlParser.cpp.

◆ xmlWriteUnsignedIntChild()

void vpXmlParser::xmlWriteUnsignedIntChild ( xmlNodePtr  node,
const char *  label,
const unsigned int  value 
)
protectedinherited

write an unsigned integer.

Parameters
node: a pointer to the node to read value
label: label (name of the data) of the node
value: unsigned integer to write

Definition at line 350 of file vpXmlParser.cpp.

Member Data Documentation

◆ angleAppear

double vpMbXmlParser::angleAppear
protectedinherited

◆ angleDisappear

double vpMbXmlParser::angleDisappear
protectedinherited

◆ blockSize

unsigned int vpMbtKltXmlParser::blockSize
protectedinherited

Block size.

Definition at line 79 of file vpMbtKltXmlParser.h.

Referenced by vpMbtKltXmlParser::read_klt(), readMainClass(), and vpMbtKltXmlParser::readMainClass().

◆ cam

vpCameraParameters vpMbXmlParser::cam
protectedinherited

◆ farClipping

double vpMbXmlParser::farClipping
protectedinherited

Near clipping distance.

Definition at line 81 of file vpMbXmlParser.h.

Referenced by vpMbXmlParser::read_face().

◆ fovClipping

bool vpMbXmlParser::fovClipping
protectedinherited

Fov Clipping.

Definition at line 83 of file vpMbXmlParser.h.

Referenced by vpMbXmlParser::read_face().

◆ harrisParam

double vpMbtKltXmlParser::harrisParam
protectedinherited

Harris free parameters.

Definition at line 77 of file vpMbtKltXmlParser.h.

Referenced by vpMbtKltXmlParser::read_klt(), readMainClass(), and vpMbtKltXmlParser::readMainClass().

◆ hasFarClipping

bool vpMbXmlParser::hasFarClipping
protectedinherited

Is far clipping distance specified?

Definition at line 79 of file vpMbXmlParser.h.

Referenced by vpMbXmlParser::read_face().

◆ hasNearClipping

bool vpMbXmlParser::hasNearClipping
protectedinherited

Is near clipping distance specified?

Definition at line 75 of file vpMbXmlParser.h.

Referenced by vpMbXmlParser::read_face().

◆ m_ecm

◆ main_tag

std::string vpXmlParser::main_tag
protectedinherited

The name of the main tag for the file to parse

Definition at line 231 of file vpXmlParser.h.

Referenced by vpXmlParser::save().

◆ maskBorder

unsigned int vpMbtKltXmlParser::maskBorder
protectedinherited

Border of the mask used on Klt points.

Definition at line 67 of file vpMbtKltXmlParser.h.

Referenced by vpMbtKltXmlParser::read_klt(), readMainClass(), and vpMbtKltXmlParser::readMainClass().

◆ maxFeatures

unsigned int vpMbtKltXmlParser::maxFeatures
protectedinherited

Maximum of Klt features.

Definition at line 69 of file vpMbtKltXmlParser.h.

Referenced by vpMbtKltXmlParser::read_klt(), readMainClass(), and vpMbtKltXmlParser::readMainClass().

◆ minDist

double vpMbtKltXmlParser::minDist
protectedinherited

Minimum distance between klt points.

Definition at line 75 of file vpMbtKltXmlParser.h.

Referenced by vpMbtKltXmlParser::read_klt(), readMainClass(), and vpMbtKltXmlParser::readMainClass().

◆ minLineLengthThreshold

double vpMbXmlParser::minLineLengthThreshold
protectedinherited

Minimum line length to track a segment when LOD is enabled.

Definition at line 87 of file vpMbXmlParser.h.

Referenced by vpMbXmlParser::read_lod(), readMainClass(), vpMbtXmlParser::readMainClass(), vpMbtKltXmlParser::readMainClass(), and vpMbXmlParser::readMainClass().

◆ minPolygonAreaThreshold

double vpMbXmlParser::minPolygonAreaThreshold
protectedinherited

Minimum polygon area to track a face when LOD is enabled.

Definition at line 89 of file vpMbXmlParser.h.

Referenced by vpMbXmlParser::read_lod(), readMainClass(), vpMbtXmlParser::readMainClass(), vpMbtKltXmlParser::readMainClass(), and vpMbXmlParser::readMainClass().

◆ nearClipping

double vpMbXmlParser::nearClipping
protectedinherited

Near clipping distance.

Definition at line 77 of file vpMbXmlParser.h.

Referenced by vpMbXmlParser::read_face().

◆ nodeMap

◆ pyramidLevels

unsigned int vpMbtKltXmlParser::pyramidLevels
protectedinherited

Number of pyramid levels.

Definition at line 81 of file vpMbtKltXmlParser.h.

Referenced by vpMbtKltXmlParser::read_klt(), readMainClass(), and vpMbtKltXmlParser::readMainClass().

◆ qualityValue

double vpMbtKltXmlParser::qualityValue
protectedinherited

Quality of the Klt points.

Definition at line 73 of file vpMbtKltXmlParser.h.

Referenced by vpMbtKltXmlParser::read_klt(), readMainClass(), and vpMbtKltXmlParser::readMainClass().

◆ useLod

bool vpMbXmlParser::useLod
protectedinherited

If true, the LOD is enabled, otherwise it is not.

Definition at line 85 of file vpMbXmlParser.h.

Referenced by vpMbXmlParser::read_lod(), readMainClass(), vpMbtXmlParser::readMainClass(), vpMbtKltXmlParser::readMainClass(), and vpMbXmlParser::readMainClass().

◆ winSize

unsigned int vpMbtKltXmlParser::winSize
protectedinherited

Windows size.

Definition at line 71 of file vpMbtKltXmlParser.h.

Referenced by vpMbtKltXmlParser::read_klt(), readMainClass(), and vpMbtKltXmlParser::readMainClass().