Tulip  4.6.0
Better Visualization Through Research
library/tulip-ogl/include/tulip/GlSceneVisitor.h
00001 /*
00002  *
00003  * This file is part of Tulip (www.tulip-software.org)
00004  *
00005  * Authors: David Auber and the Tulip development Team
00006  * from LaBRI, University of Bordeaux
00007  *
00008  * Tulip is free software; you can redistribute it and/or modify
00009  * it under the terms of the GNU Lesser General Public License
00010  * as published by the Free Software Foundation, either version 3
00011  * of the License, or (at your option) any later version.
00012  *
00013  * Tulip is distributed in the hope that it will be useful,
00014  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00015  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00016  * See the GNU General Public License for more details.
00017  *
00018  */
00019 ///@cond DOXYGEN_HIDDEN
00020 
00021 #ifndef Tulip_GLSCENEVISITOR_H
00022 #define Tulip_GLSCENEVISITOR_H
00023 
00024 #include <tulip/tulipconf.h>
00025 
00026 namespace tlp {
00027 
00028 class GlSimpleEntity;
00029 class GlNode;
00030 class GlEdge;
00031 class GlLayer;
00032 
00033 class TLP_GL_SCOPE GlSceneVisitor {
00034 
00035 public:
00036 
00037   GlSceneVisitor():threadSafe(false) {}
00038   virtual ~GlSceneVisitor() {}
00039 
00040   virtual void visit(GlSimpleEntity *) {}
00041   virtual void visit(GlNode *) {}
00042   virtual void visit(GlEdge *) {}
00043   virtual void visit(GlLayer *) {}
00044   virtual void reserveMemoryForNodes(unsigned int) {}
00045   virtual void reserveMemoryForEdges(unsigned int) {}
00046   bool isThreadSafe() {
00047     return threadSafe;
00048   }
00049 
00050 protected :
00051 
00052   bool threadSafe;
00053 
00054 };
00055 
00056 }
00057 
00058 #endif // Tulip_GLSCENEVISITOR_H
00059 ///@endcond
 All Classes Files Functions Variables Enumerations Enumerator Properties