31 #include <RobotComponents/interface/components/MotionPlanning/CSpace/CSpace.h>
52 class CSpace :
virtual public CSpaceBase
60 const Ice::Current& = Ice::emptyCurrent)
const override;
76 bool isCollisionFree(const ::std::pair<const Ice::Float*, const Ice::Float*>& config,
77 const Ice::Current& = Ice::emptyCurrent)
override = 0;
82 CSpaceBasePtr
clone(
const Ice::Current& = Ice::emptyCurrent)
override = 0;
103 std::make_pair(config.data(), config.data() + config.size()));
113 return isCollisionFree(std::make_pair(config.data(), config.data() + config.size()));
135 CSpaceAdaptor(CSpaceBasePtr originalCSpace) : CSpaceAdaptorBase(originalCSpace)
139 throw std::invalid_argument{
"the original cspace can't be null"};
146 return originalCSpace;