Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
tesseract_geometry::Geometry Class Referenceabstract

#include <geometry.h>

Inheritance diagram for tesseract_geometry::Geometry:
Inheritance graph
[legend]

Public Types

using ConstPtr = std::shared_ptr< const Geometry >
 
using Ptr = std::shared_ptr< Geometry >
 

Public Member Functions

virtual Geometry::Ptr clone () const =0
 Create a copy of this shape. More...
 
 Geometry (const Geometry &)=default
 
 Geometry (Geometry &&)=default
 
 Geometry (GeometryType type=GeometryType::UNINITIALIZED)
 
GeometryType getType () const
 Get the geometry type. More...
 
const boost::uuids::uuid & getUUID () const
 Get the geometry UUID. More...
 
bool operator!= (const Geometry &rhs) const
 
Geometryoperator= (const Geometry &)=default
 
Geometryoperator= (Geometry &&)=default
 
bool operator== (const Geometry &rhs) const
 
void setUUID (const boost::uuids::uuid &uuid)
 Set the geometry UUID. More...
 
virtual ~Geometry ()=default
 

Private Member Functions

template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 

Private Attributes

GeometryType type_
 The type of the shape. More...
 
boost::uuids::uuid uuid_ {}
 The uuid of the shape. More...
 

Friends

class boost::serialization::access
 
struct tesseract_common::Serialization
 

Detailed Description

Definition at line 69 of file geometry.h.

Member Typedef Documentation

◆ ConstPtr

using tesseract_geometry::Geometry::ConstPtr = std::shared_ptr<const Geometry>

Definition at line 73 of file geometry.h.

◆ Ptr

using tesseract_geometry::Geometry::Ptr = std::shared_ptr<Geometry>

Definition at line 72 of file geometry.h.

Constructor & Destructor Documentation

◆ Geometry() [1/3]

tesseract_geometry::Geometry::Geometry ( GeometryType  type = GeometryType::UNINITIALIZED)
explicit

Definition at line 40 of file geometry.cpp.

◆ ~Geometry()

virtual tesseract_geometry::Geometry::~Geometry ( )
virtualdefault

◆ Geometry() [2/3]

tesseract_geometry::Geometry::Geometry ( const Geometry )
default

◆ Geometry() [3/3]

tesseract_geometry::Geometry::Geometry ( Geometry &&  )
default

Member Function Documentation

◆ clone()

virtual Geometry::Ptr tesseract_geometry::Geometry::clone ( ) const
pure virtual

◆ getType()

GeometryType tesseract_geometry::Geometry::getType ( ) const

Get the geometry type.

Definition at line 42 of file geometry.cpp.

◆ getUUID()

const boost::uuids::uuid & tesseract_geometry::Geometry::getUUID ( ) const

Get the geometry UUID.

Definition at line 46 of file geometry.cpp.

◆ operator!=()

bool tesseract_geometry::Geometry::operator!= ( const Geometry rhs) const

Definition at line 49 of file geometry.cpp.

◆ operator=() [1/2]

Geometry& tesseract_geometry::Geometry::operator= ( const Geometry )
default

◆ operator=() [2/2]

Geometry& tesseract_geometry::Geometry::operator= ( Geometry &&  )
default

◆ operator==()

bool tesseract_geometry::Geometry::operator== ( const Geometry rhs) const

Definition at line 48 of file geometry.cpp.

◆ serialize()

template<class Archive >
void tesseract_geometry::Geometry::serialize ( Archive &  ar,
const unsigned int  version 
)
private

Definition at line 52 of file geometry.cpp.

◆ setUUID()

void tesseract_geometry::Geometry::setUUID ( const boost::uuids::uuid &  uuid)

Set the geometry UUID.

Definition at line 44 of file geometry.cpp.

Friends And Related Function Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Definition at line 104 of file geometry.h.

◆ tesseract_common::Serialization

friend struct tesseract_common::Serialization
friend

Definition at line 105 of file geometry.h.

Member Data Documentation

◆ type_

GeometryType tesseract_geometry::Geometry::type_
private

The type of the shape.

Definition at line 99 of file geometry.h.

◆ uuid_

boost::uuids::uuid tesseract_geometry::Geometry::uuid_ {}
private

The uuid of the shape.

Definition at line 102 of file geometry.h.


The documentation for this class was generated from the following files:


tesseract_geometry
Author(s): Levi Armstrong
autogenerated on Sun May 18 2025 03:01:46