libmspub::ShapeGroupElement Class Reference

#include <ShapeGroupElement.h>

Public Member Functions

 ShapeGroupElement (ShapeGroupElement *parent)
 
 ShapeGroupElement (ShapeGroupElement *parent, unsigned seqNum)
 
 ~ShapeGroupElement ()
 
void setShapeInfo (const ShapeInfo &shapeInfo)
 
void setup (boost::function< void(ShapeGroupElement &self)> visitor)
 
void visit (boost::function< boost::function< void(void)>(const ShapeInfo &info, const Coordinate &relativeTo, const VectorTransformation2D &foldedTransform, bool isGroup, const VectorTransformation2D &thisTransform)> visitor, const Coordinate &relativeTo, const VectorTransformation2D &foldedTransform) const
 
void visit (boost::function< boost::function< void(void)>(const ShapeInfo &info, const Coordinate &relativeTo, const VectorTransformation2D &foldedTransform, bool isGroup, const VectorTransformation2D &thisTransform)> visitor) const
 
bool isGroup () const
 
ShapeGroupElementgetParent ()
 
const ShapeGroupElementgetParent () const
 
void setSeqNum (unsigned seqNum)
 
void setTransform (const VectorTransformation2D &transform)
 
unsigned getSeqNum () const
 

Private Member Functions

ShapeGroupElementoperator= (const ShapeGroupElement &)
 
 ShapeGroupElement (const ShapeGroupElement &)
 

Private Attributes

boost::optional< ShapeInfom_shapeInfo
 
ShapeGroupElementm_parent
 
std::vector< ShapeGroupElement * > m_children
 
unsigned m_seqNum
 
VectorTransformation2D m_transform
 

Constructor & Destructor Documentation

libmspub::ShapeGroupElement::ShapeGroupElement ( const ShapeGroupElement )
private
libmspub::ShapeGroupElement::ShapeGroupElement ( ShapeGroupElement parent)
libmspub::ShapeGroupElement::ShapeGroupElement ( ShapeGroupElement parent,
unsigned  seqNum 
)
libmspub::ShapeGroupElement::~ShapeGroupElement ( )

Member Function Documentation

ShapeGroupElement * libmspub::ShapeGroupElement::getParent ( )
const ShapeGroupElement * libmspub::ShapeGroupElement::getParent ( ) const
unsigned libmspub::ShapeGroupElement::getSeqNum ( ) const
bool libmspub::ShapeGroupElement::isGroup ( ) const
ShapeGroupElement& libmspub::ShapeGroupElement::operator= ( const ShapeGroupElement )
private
void libmspub::ShapeGroupElement::setSeqNum ( unsigned  seqNum)
void libmspub::ShapeGroupElement::setShapeInfo ( const ShapeInfo shapeInfo)
void libmspub::ShapeGroupElement::setTransform ( const VectorTransformation2D transform)
void libmspub::ShapeGroupElement::setup ( boost::function< void(ShapeGroupElement &self)>  visitor)
void libmspub::ShapeGroupElement::visit ( boost::function< boost::function< void(void)>(const ShapeInfo &info, const Coordinate &relativeTo, const VectorTransformation2D &foldedTransform, bool isGroup, const VectorTransformation2D &thisTransform)>  visitor,
const Coordinate relativeTo,
const VectorTransformation2D foldedTransform 
) const
void libmspub::ShapeGroupElement::visit ( boost::function< boost::function< void(void)>(const ShapeInfo &info, const Coordinate &relativeTo, const VectorTransformation2D &foldedTransform, bool isGroup, const VectorTransformation2D &thisTransform)>  visitor) const

Member Data Documentation

std::vector<ShapeGroupElement *> libmspub::ShapeGroupElement::m_children
private
ShapeGroupElement* libmspub::ShapeGroupElement::m_parent
private

Referenced by getParent(), and ShapeGroupElement().

unsigned libmspub::ShapeGroupElement::m_seqNum
private

Referenced by getSeqNum(), and setSeqNum().

boost::optional<ShapeInfo> libmspub::ShapeGroupElement::m_shapeInfo
private

Referenced by setShapeInfo().

VectorTransformation2D libmspub::ShapeGroupElement::m_transform
private

Referenced by setTransform().


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

Generated for libmspub by doxygen 1.8.9.1