## class osg::CompositeShape

## Inheritance:

### Public Methods

CompositeShape()
CompositeShape(const CompositeShape& cs, const CopyOp& copyop=CopyOp::SHALLOW_COPY)
META_Shape(osg, CompositeShape)
void setShape(Shape* shape)
  Set the shape that encloses all of the children
Shape* getShape()
  Get the shape that encloses all of the children
const Shape* getShape() const
  Get the const shape that encloses all of the children
unsigned int getNumChildren() const
  Get the number of children of this composite shape
Shape* getChild(unsigned int i)
  Get a child
const Shape* getChild(unsigned int i) const
  Get a const child
void addChild(Shape* shape)
  Add a child to the list
void removeChild(unsigned int i)
  remove a child from the list
unsigned int findChildNo(Shape* shape) const
  find the index number of child, if child is not found then it returns getNumChildren(), so should be used in similar sytle of STL's result!=end()

### Public Members

typedef std::vector< ref_ptr<Shape> > ChildList

### Protected Fields

ref_ptr<Shape> _shape
ChildList _children

### Protected Methods

~CompositeShape()

### Inherited from Shape:

### Public Methods

virtual Object* cloneType() const
virtual Object* clone(const CopyOp&) const
virtual bool isSameKindAs(const Object* obj) const
virtual const char* libraryName() const
virtual const char* className() const
virtual void accept(ShapeVisitor&)
virtual void accept(ConstShapeVisitor&) const

### Inherited from Object:

### Public Methods

inline void setDataVariance(DataVariance dv)
inline DataVariance getDataVariance() const
inline void setUserData(Referenced* obj)
inline Referenced* getUserData()
inline const Referenced* getUserData() const

### Public Members

enum DataVariance

### Protected Fields

DataVariance _dataVariance
ref_ptr<Referenced> _userData

### Inherited from Referenced:

### Public Methods

inline Referenced& operator = (Referenced&)
static void setDeleteHandler(DeleteHandler* handler)
static DeleteHandler* getDeleteHandler()
inline void ref() const
inline void unref_nodelete() const
inline int referenceCount() const
inline void unref() const

### Protected Fields

mutable int _refCount

## Documentation

`typedef std::vector< ref_ptr<Shape> > ChildList`

`CompositeShape()`

`CompositeShape(const CompositeShape& cs, const CopyOp& copyop=CopyOp::SHALLOW_COPY)`

`META_Shape(osg, CompositeShape)`

`void setShape(Shape* shape)`
  Set the shape that encloses all of the children

`Shape* getShape()`
  Get the shape that encloses all of the children

`const Shape* getShape() const`
  Get the const shape that encloses all of the children

`unsigned int getNumChildren() const`
  Get the number of children of this composite shape

`Shape* getChild(unsigned int i)`
  Get a child

`const Shape* getChild(unsigned int i) const`
  Get a const child

`void addChild(Shape* shape)`
  Add a child to the list

`void removeChild(unsigned int i)`
  remove a child from the list

`unsigned int findChildNo(Shape* shape) const`
  find the index number of child, if child is not found then it returns getNumChildren(), so should be used in similar sytle of STL's result!=end()

`~CompositeShape()`

`ref_ptr<Shape> _shape`

`ChildList _children`

This class has no child classes.

Alphabetic index HTML hierarchy of classes or Java

This page was generated with the help of DOC++.