Gizmo3D

gzCompileGroup.h

Go to the documentation of this file.
00001 //*****************************************************************************
00002 // File         : gzCompileGroup.h
00003 // Module       : 
00004 // Description  : Class definition of the gzCompileGroup class
00005 // Author       : Anders Modén      
00006 // Product      : Gizmo3D 2.1.1
00007 //      
00008 // Copyright © 2003- Saab Training Systems AB, Sweden   
00009 //          
00010 // NOTE:    Gizmo3D is a high performance 3D Scene Graph and effect visualisation 
00011 //          C++ toolkit for Linux, Mac OS X, Windows (Win32) and IRIX® for  
00012 //          usage in Game or VisSim development.
00013 //
00014 //
00015 // Revision History...                          
00016 //                                  
00017 // Who  Date    Description                     
00018 //                                  
00019 // AMO  030312  Created file 
00020 //
00021 //******************************************************************************
00022 #ifndef __GZ_COMPILE_GROUP_H__
00023 #define __GZ_COMPILE_GROUP_H__
00024 
00031 #include "gzGroup.h"
00032 
00033 //******************************************************************************
00034 // Class    : gzCompileGroup
00035 //                                  
00036 // Purpose  : -
00037 //                                  
00038 // Notes    : - 
00039 //                                  
00040 // Revision History...                          
00041 //                                  
00042 // Who  Date    Description                     
00043 //                                  
00044 // AMO  030313  Created 
00045 //                                  
00046 //******************************************************************************
00047 class gzCompileGroup : public gzGroup
00048 {
00049 public:
00050     GZ_GRAPH_EXPORT gzCompileGroup(const gzString & name=GZ_EMPTY_STRING);
00051 
00052     GZ_GRAPH_EXPORT virtual ~gzCompileGroup();
00053 
00054     GZ_DECLARE_TYPE_INTERFACE_EXPORT(GZ_GRAPH_EXPORT);  // typed interface
00055 
00056 
00057     // ---------- Clone interface ---------------------------------------
00058     GZ_GRAPH_EXPORT virtual gzReference* clone() const;
00059 
00060     // ---------- gzCompileGroup commands ----------------------------------------
00061 
00062     GZ_GRAPH_EXPORT gzVoid reCompile();
00063 
00064     GZ_GRAPH_EXPORT gzVoid expandGeometry(gzBool on=TRUE);
00065 
00066     GZ_GRAPH_EXPORT gzVoid dropSource(gzBool on);
00067 
00068     // ---------- Action Interface --------------------------------------
00069     GZ_GRAPH_EXPORT virtual gzVoid preTraverseAction( gzTraverseAction *actionclass , gzContext *context);
00070     GZ_GRAPH_EXPORT virtual gzBool isTraversable( gzTraverseAction *action , gzNode *node , gzULong index, gzContext *context);
00071     GZ_GRAPH_EXPORT virtual gzVoid postTraverseAction( gzTraverseAction *actionclass , gzContext *context);
00072 
00073     GZ_GRAPH_EXPORT virtual gzVoid updateNode();
00074 
00075     GZ_GRAPH_EXPORT virtual gzActionStage useActionStage( gzTraverseAction *actionclass , gzContext *context);
00076 
00077 
00078 private:
00079 
00080     gzVoid clearCompiledContexts();
00081 
00082     gzDynamicArray<gzRefPointer<gzContext> >    m_compiledContexts;
00083 
00084     gzBool                                      m_expandGeometry:1;
00085 
00086     gzBool                                      m_dropSource:1;
00087 
00088 };
00089 
00090 #endif

Documentation for Gizmo3D generated at Wed Feb 20 11:54:03 2008 by   Saab Training Systems AB, ¸ (c) 2003-and beyond