Tesseract
Motion Planning Environment
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
tesseract_collision::VHACD::MyHACD_API Class Reference
Inheritance diagram for tesseract_collision::VHACD::MyHACD_API:
Inheritance graph
[legend]
Collaboration diagram for tesseract_collision::VHACD::MyHACD_API:
Collaboration graph
[legend]

Public Member Functions

 MyHACD_API ()
 
virtual ~MyHACD_API () override
 
bool Compute (double const *_points, uint32_t countPoints, uint32_t const *_triangles, uint32_t countTriangles, const Parameters &_desc) override final
 
bool ComputeNow (double *const points, uint32_t countPoints, uint32_t *const triangles, uint32_t countTriangles, const Parameters &_desc)
 
void releaseHull (VHACD::IVHACD::ConvexHull &h)
 
void GetConvexHull (uint32_t index, VHACD::IVHACD::ConvexHull &ch) const override final
 
void releaseHACD ()
 
virtual void release ()
 
virtual uint32_t getHullCount ()
 
virtual void Cancel () override final
 
bool Compute (float const *points, uint32_t countPoints, uint32_t const *triangles, uint32_t countTriangles, const Parameters &params) override final
 
uint32_t GetNConvexHulls () const override final
 
void Clean () override final
 
void Release () override final
 
bool OCLInit (void const *oclDevice, IVHACD::IUserLogger const *logger=nullptr) override final
 
bool OCLRelease (IVHACD::IUserLogger const *logger=nullptr) override final
 
void Update (double overallProgress, double stageProgress, double operationProgress, const std::string &stage, const std::string &operation) override final
 
void Log (const std::string &msg) const override final
 
bool IsReady (void) const override final
 
void processPendingMessages () const
 
bool ComputeCenterOfMass (std::array< double, 3 > &centerOfMass) const override
 
- Public Member Functions inherited from tesseract_collision::VHACD::IVHACD
 IVHACD ()=default
 
virtual ~IVHACD ()=default
 
 IVHACD (const IVHACD &)=default
 
IVHACDoperator= (const IVHACD &)=default
 
 IVHACD (IVHACD &&)=default
 
IVHACDoperator= (IVHACD &&)=default
 
virtual void Cancel ()=0
 
virtual bool Compute (float const *points, uint32_t countPoints, uint32_t const *triangles, uint32_t countTriangles, const Parameters &params)=0
 
virtual bool Compute (double const *points, uint32_t countPoints, uint32_t const *triangles, uint32_t countTriangles, const Parameters &params)=0
 
virtual uint32_t GetNConvexHulls () const =0
 
virtual void GetConvexHull (uint32_t index, ConvexHull &ch) const =0
 
virtual void Clean ()=0
 
virtual void Release ()=0
 
virtual bool OCLInit (void const *oclDevice, IUserLogger const *logger=nullptr)=0
 
virtual bool OCLRelease (IUserLogger const *logger=nullptr)=0
 
virtual bool ComputeCenterOfMass (std::array< double, 3 > &centerOfMass) const =0
 
virtual bool IsReady () const
 

Private Attributes

double * mVertices { nullptr }
 
uint32_t * mIndices { nullptr }
 
std::atomic< uint32_t > mHullCount { 0 }
 
VHACD::IVHACD::ConvexHullmHulls { nullptr }
 
VHACD::IVHACD::IUserCallbackmCallback { nullptr }
 
VHACD::IVHACD::IUserLoggermLogger { nullptr }
 
VHACD::IVHACDmVHACD { nullptr }
 
std::thread * mThread { nullptr }
 
std::atomic< bool > mRunning { false }
 
std::atomic< bool > mCancel { false }
 
std::mutex mMessageMutex
 
std::atomic< bool > mHaveUpdateMessage { false }
 
std::atomic< bool > mHaveLogMessage { false }
 
double mOverallProgress { 0 }
 
double mStageProgress { 0 }
 
double mOperationProgress { 0 }
 
std::string mStage
 
std::string mOperation
 
std::string mMessage
 

Additional Inherited Members

- Private Member Functions inherited from tesseract_collision::VHACD::IVHACD::IUserCallback
 IUserCallback ()=default
 
virtual ~IUserCallback ()=default
 
 IUserCallback (const IUserCallback &)=default
 
IUserCallbackoperator= (const IUserCallback &)=default
 
 IUserCallback (IUserCallback &&)=default
 
IUserCallbackoperator= (IUserCallback &&)=default
 
virtual void Update (double overallProgress, double stageProgress, double operationProgress, const std::string &stage, const std::string &operation)=0
 
- Private Member Functions inherited from tesseract_collision::VHACD::IVHACD::IUserLogger
 IUserLogger ()=default
 
virtual ~IUserLogger ()=default
 
 IUserLogger (const IUserLogger &)=default
 
IUserLoggeroperator= (const IUserLogger &)=default
 
 IUserLogger (IUserLogger &&)=default
 
IUserLoggeroperator= (IUserLogger &&)=default
 
virtual void Log (const std::string &msg) const =0
 

Constructor & Destructor Documentation

◆ MyHACD_API()

tesseract_collision::VHACD::MyHACD_API::MyHACD_API ( )
inline

◆ ~MyHACD_API()

virtual tesseract_collision::VHACD::MyHACD_API::~MyHACD_API ( )
inlineoverridevirtual

Member Function Documentation

◆ Cancel()

virtual void tesseract_collision::VHACD::MyHACD_API::Cancel ( )
inlinefinaloverridevirtual

◆ Clean()

void tesseract_collision::VHACD::MyHACD_API::Clean ( )
inlinefinaloverridevirtual

◆ Compute() [1/2]

bool tesseract_collision::VHACD::MyHACD_API::Compute ( double const *  _points,
uint32_t  countPoints,
uint32_t const *  _triangles,
uint32_t  countTriangles,
const Parameters _desc 
)
inlinefinaloverridevirtual

◆ Compute() [2/2]

bool tesseract_collision::VHACD::MyHACD_API::Compute ( float const *  points,
uint32_t  countPoints,
uint32_t const *  triangles,
uint32_t  countTriangles,
const Parameters params 
)
inlinefinaloverridevirtual

◆ ComputeCenterOfMass()

bool tesseract_collision::VHACD::MyHACD_API::ComputeCenterOfMass ( std::array< double, 3 > &  centerOfMass) const
inlineoverridevirtual

◆ ComputeNow()

bool tesseract_collision::VHACD::MyHACD_API::ComputeNow ( double *const  points,
uint32_t  countPoints,
uint32_t *const  triangles,
uint32_t  countTriangles,
const Parameters _desc 
)
inline

◆ GetConvexHull()

void tesseract_collision::VHACD::MyHACD_API::GetConvexHull ( uint32_t  index,
VHACD::IVHACD::ConvexHull ch 
) const
inlinefinaloverridevirtual

◆ getHullCount()

virtual uint32_t tesseract_collision::VHACD::MyHACD_API::getHullCount ( )
inlinevirtual

◆ GetNConvexHulls()

uint32_t tesseract_collision::VHACD::MyHACD_API::GetNConvexHulls ( ) const
inlinefinaloverridevirtual

◆ IsReady()

bool tesseract_collision::VHACD::MyHACD_API::IsReady ( void  ) const
inlinefinaloverridevirtual

◆ Log()

void tesseract_collision::VHACD::MyHACD_API::Log ( const std::string &  msg) const
inlinefinaloverridevirtual

◆ OCLInit()

bool tesseract_collision::VHACD::MyHACD_API::OCLInit ( void const *  oclDevice,
IVHACD::IUserLogger const *  logger = nullptr 
)
inlinefinaloverridevirtual

◆ OCLRelease()

bool tesseract_collision::VHACD::MyHACD_API::OCLRelease ( IVHACD::IUserLogger const *  logger = nullptr)
inlinefinaloverridevirtual

◆ processPendingMessages()

void tesseract_collision::VHACD::MyHACD_API::processPendingMessages ( ) const
inline

◆ release()

virtual void tesseract_collision::VHACD::MyHACD_API::release ( )
inlinevirtual

◆ Release()

void tesseract_collision::VHACD::MyHACD_API::Release ( )
inlinefinaloverridevirtual

◆ releaseHACD()

void tesseract_collision::VHACD::MyHACD_API::releaseHACD ( )
inline

◆ releaseHull()

void tesseract_collision::VHACD::MyHACD_API::releaseHull ( VHACD::IVHACD::ConvexHull h)
inline

◆ Update()

void tesseract_collision::VHACD::MyHACD_API::Update ( double  overallProgress,
double  stageProgress,
double  operationProgress,
const std::string &  stage,
const std::string &  operation 
)
inlinefinaloverridevirtual

Member Data Documentation

◆ mCallback

VHACD::IVHACD::IUserCallback* tesseract_collision::VHACD::MyHACD_API::mCallback { nullptr }
private

◆ mCancel

std::atomic<bool> tesseract_collision::VHACD::MyHACD_API::mCancel { false }
private

◆ mHaveLogMessage

std::atomic<bool> tesseract_collision::VHACD::MyHACD_API::mHaveLogMessage { false }
mutableprivate

◆ mHaveUpdateMessage

std::atomic<bool> tesseract_collision::VHACD::MyHACD_API::mHaveUpdateMessage { false }
mutableprivate

◆ mHullCount

std::atomic<uint32_t> tesseract_collision::VHACD::MyHACD_API::mHullCount { 0 }
private

◆ mHulls

VHACD::IVHACD::ConvexHull* tesseract_collision::VHACD::MyHACD_API::mHulls { nullptr }
private

◆ mIndices

uint32_t* tesseract_collision::VHACD::MyHACD_API::mIndices { nullptr }
private

◆ mLogger

VHACD::IVHACD::IUserLogger* tesseract_collision::VHACD::MyHACD_API::mLogger { nullptr }
private

◆ mMessage

std::string tesseract_collision::VHACD::MyHACD_API::mMessage
mutableprivate

◆ mMessageMutex

std::mutex tesseract_collision::VHACD::MyHACD_API::mMessageMutex
mutableprivate

◆ mOperation

std::string tesseract_collision::VHACD::MyHACD_API::mOperation
mutableprivate

◆ mOperationProgress

double tesseract_collision::VHACD::MyHACD_API::mOperationProgress { 0 }
mutableprivate

◆ mOverallProgress

double tesseract_collision::VHACD::MyHACD_API::mOverallProgress { 0 }
mutableprivate

◆ mRunning

std::atomic<bool> tesseract_collision::VHACD::MyHACD_API::mRunning { false }
private

◆ mStage

std::string tesseract_collision::VHACD::MyHACD_API::mStage
mutableprivate

◆ mStageProgress

double tesseract_collision::VHACD::MyHACD_API::mStageProgress { 0 }
mutableprivate

◆ mThread

std::thread* tesseract_collision::VHACD::MyHACD_API::mThread { nullptr }
private

◆ mVertices

double* tesseract_collision::VHACD::MyHACD_API::mVertices { nullptr }
private

◆ mVHACD

VHACD::IVHACD* tesseract_collision::VHACD::MyHACD_API::mVHACD { nullptr }
private

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