octomap
1.9.7
|
This abstract class is an interface to all octrees and provides a factory design pattern for readin and writing all kinds of OcTrees to files (see read()). More...
Public Member Functions | |
AbstractOcTree () | |
virtual void | clear ()=0 |
virtual AbstractOcTree * | create () const =0 |
virtual constructor: creates a new object of same type More... | |
virtual void | expand ()=0 |
virtual void | getMetricMax (double &x, double &y, double &z) const =0 |
virtual void | getMetricMax (double &x, double &y, double &z)=0 |
virtual void | getMetricMin (double &x, double &y, double &z) const =0 |
virtual void | getMetricMin (double &x, double &y, double &z)=0 |
virtual void | getMetricSize (double &x, double &y, double &z)=0 |
virtual double | getResolution () const =0 |
virtual std::string | getTreeType () const =0 |
returns actual class name as string for identification More... | |
virtual size_t | memoryUsage () const =0 |
virtual size_t | memoryUsageNode () const =0 |
virtual void | prune ()=0 |
virtual std::istream & | readData (std::istream &s)=0 |
Read all nodes from the input stream (without file header), for this the tree needs to be already created. More... | |
virtual void | setResolution (double res)=0 |
virtual size_t | size () const =0 |
bool | write (const std::string &filename) const |
Write file header and complete tree to file (serialization) More... | |
bool | write (std::ostream &s) const |
Write file header and complete tree to stream (serialization) More... | |
virtual std::ostream & | writeData (std::ostream &s) const =0 |
Write complete state of tree to stream (without file header) unmodified. Pruning the tree first produces smaller files (lossless compression) More... | |
virtual | ~AbstractOcTree () |
Static Public Member Functions | |
static AbstractOcTree * | createTree (const std::string id, double res) |
Creates a certain OcTree (factory pattern) More... | |
static AbstractOcTree * | read (const std::string &filename) |
Read the file header, create the appropriate class and deserialize. More... | |
static AbstractOcTree * | read (std::istream &s) |
Read the file header, create the appropriate class and deserialize. This creates a new octree which you need to delete yourself. More... | |
Static Protected Member Functions | |
static bool | readHeader (std::istream &s, std::string &id, unsigned &size, double &res) |
static void | registerTreeType (AbstractOcTree *tree) |
Static Protected Attributes | |
static const std::string | fileHeader = "# Octomap OcTree file" |
Friends | |
class | StaticMapInit |
This abstract class is an interface to all octrees and provides a factory design pattern for readin and writing all kinds of OcTrees to files (see read()).
octomap::AbstractOcTree::AbstractOcTree | ( | ) |
|
inlinevirtual |
|
pure virtual |
Implemented in octomap::OcTreeBaseImpl< OcTreeNode, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOcTree >, octomap::OcTreeBaseImpl< OcTreeNodeStamped, AbstractOccupancyOcTree >, and octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >.
Referenced by octomap::AbstractOccupancyOcTree::readBinary(), and octomap::AbstractOccupancyOcTree::readBinaryLegacyHeader().
|
pure virtual |
virtual constructor: creates a new object of same type
Implemented in octomap::ColorOcTree, octomap::OcTreeStamped, octomap::OcTree, and octomap::OcTreeBase< NODE >.
|
static |
Creates a certain OcTree (factory pattern)
References OCTOMAP_ERROR, and setResolution().
Referenced by read().
|
pure virtual |
Implemented in octomap::OcTreeBaseImpl< OcTreeNode, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOcTree >, octomap::OcTreeBaseImpl< OcTreeNodeStamped, AbstractOccupancyOcTree >, and octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >.
|
pure virtual |
Implemented in octomap::OcTreeBaseImpl< OcTreeNode, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOcTree >, octomap::OcTreeBaseImpl< OcTreeNodeStamped, AbstractOccupancyOcTree >, and octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >.
|
pure virtual |
Implemented in octomap::OcTreeBaseImpl< OcTreeNode, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOcTree >, octomap::OcTreeBaseImpl< OcTreeNodeStamped, AbstractOccupancyOcTree >, and octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >.
|
pure virtual |
Implemented in octomap::OcTreeBaseImpl< OcTreeNode, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOcTree >, octomap::OcTreeBaseImpl< OcTreeNodeStamped, AbstractOccupancyOcTree >, and octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >.
|
pure virtual |
Implemented in octomap::OcTreeBaseImpl< OcTreeNode, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOcTree >, octomap::OcTreeBaseImpl< OcTreeNodeStamped, AbstractOccupancyOcTree >, and octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >.
|
pure virtual |
Implemented in octomap::OcTreeBaseImpl< OcTreeNode, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOcTree >, octomap::OcTreeBaseImpl< OcTreeNodeStamped, AbstractOccupancyOcTree >, and octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >.
|
pure virtual |
Referenced by main(), write(), and octomap::AbstractOccupancyOcTree::writeBinaryConst().
|
pure virtual |
returns actual class name as string for identification
Implemented in octomap::ColorOcTree, octomap::OcTreeStamped, octomap::OcTree, and octomap::OcTreeBase< NODE >.
Referenced by main(), registerTreeType(), write(), and octomap::AbstractOccupancyOcTree::writeBinaryConst().
|
pure virtual |
|
pure virtual |
|
pure virtual |
Implemented in octomap::OcTreeBaseImpl< OcTreeNode, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOcTree >, octomap::OcTreeBaseImpl< OcTreeNodeStamped, AbstractOccupancyOcTree >, and octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >.
Referenced by octomap::AbstractOccupancyOcTree::writeBinary().
|
static |
Read the file header, create the appropriate class and deserialize.
This creates a new octree which you need to delete yourself. If you expect or requre a specific kind of octree, use dynamic_cast afterwards:
References OCTOMAP_ERROR_STR.
|
static |
Read the file header, create the appropriate class and deserialize. This creates a new octree which you need to delete yourself.
References createTree(), fileHeader, OCTOMAP_DEBUG_STR, OCTOMAP_ERROR_STR, readData(), readHeader(), and size().
|
pure virtual |
Read all nodes from the input stream (without file header), for this the tree needs to be already created.
For general file IO, you should probably use AbstractOcTree::read() instead.
Implemented in octomap::OcTreeBaseImpl< OcTreeNode, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOcTree >, octomap::OcTreeBaseImpl< OcTreeNodeStamped, AbstractOccupancyOcTree >, and octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >.
Referenced by read().
|
staticprotected |
References OCTOMAP_ERROR_STR, OCTOMAP_WARNING, OCTOMAP_WARNING_STR, and size().
Referenced by read(), and octomap::AbstractOccupancyOcTree::readBinary().
|
staticprotected |
References getTreeType().
Referenced by octomap::OcTree::StaticMemberInitializer::StaticMemberInitializer(), octomap::CountingOcTree::StaticMemberInitializer::StaticMemberInitializer(), octomap::OcTreeStamped::StaticMemberInitializer::StaticMemberInitializer(), and octomap::ColorOcTree::StaticMemberInitializer::StaticMemberInitializer().
|
pure virtual |
Implemented in octomap::OcTreeBaseImpl< OcTreeNode, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOcTree >, octomap::OcTreeBaseImpl< OcTreeNodeStamped, AbstractOccupancyOcTree >, and octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >.
Referenced by createTree(), and octomap::AbstractOccupancyOcTree::readBinary().
|
pure virtual |
bool octomap::AbstractOcTree::write | ( | const std::string & | filename | ) | const |
Write file header and complete tree to file (serialization)
References OCTOMAP_ERROR_STR.
Referenced by main().
bool octomap::AbstractOcTree::write | ( | std::ostream & | s | ) | const |
Write file header and complete tree to stream (serialization)
References fileHeader, getResolution(), getTreeType(), size(), and writeData().
|
pure virtual |
Write complete state of tree to stream (without file header) unmodified. Pruning the tree first produces smaller files (lossless compression)
Implemented in octomap::OcTreeBaseImpl< OcTreeNode, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOccupancyOcTree >, octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >, octomap::OcTreeBaseImpl< NODE, AbstractOcTree >, octomap::OcTreeBaseImpl< OcTreeNodeStamped, AbstractOccupancyOcTree >, and octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >.
Referenced by write().
|
friend |
|
staticprotected |