27 #include <tulip/GlSimpleEntity.h>
28 #include <tulip/tulipconf.h>
48 GlComposite(
bool deleteComponentsInDestructor=
true);
60 void reset(
bool deleteElems);
72 void deleteGlEntity(
const std::string &key,
bool informTheEntity=
true);
78 void deleteGlEntity(
GlSimpleEntity *entity,
bool informTheEntity=
true);
90 const std::map<std::string, GlSimpleEntity*> &
102 this->stencil=stencil;
104 for(std::list<GlSimpleEntity*>::iterator it=_sortedElements.begin(); it!=_sortedElements.end(); ++it) {
105 (*it)->setStencil(stencil);
113 this->deleteComponentsInDestructor=deleteComponentsInDestructor;
119 virtual void translate(
const Coord &mouvement);
124 virtual void getXML(std::string &outString);
129 virtual void setWithXML(
const std::string &inString,
unsigned int ¤tPosition);
136 virtual void acceptVisitor(GlSceneVisitor *visitor) {
138 for(std::list<GlSimpleEntity*>::iterator it=_sortedElements.begin(); it!=_sortedElements.end(); ++it) {
139 if((*it)->isVisible()) {
145 for(std::map<std::string, GlSimpleEntity*>::iterator itE=elements.begin(); itE!=elements.end(); ++itE) {
146 if((*itE).second==(*it)) {
147 tlp::warning() <<
"Invalid bounding box for entity : " << (*itE).first << std::endl;
155 (*it)->acceptVisitor(visitor);
163 virtual void addLayerParent(GlLayer *layer);
168 virtual void removeLayerParent(GlLayer *layer);
173 void notifyModified(GlSimpleEntity *entity);
178 virtual void draw(
float,Camera *) {}
184 std::map<std::string, GlSimpleEntity*> elements;
185 std::list<GlSimpleEntity *> _sortedElements;
186 std::vector<GlLayer *> layerParents;
187 bool deleteComponentsInDestructor;