CMS 3D CMS Logo

IgSoTwig.h

Go to the documentation of this file.
00001 #ifndef GL_MODELS_IG_SO_TWIG_H
00002 # define GL_MODELS_IG_SO_TWIG_H
00003 
00004 //<<<<<< INCLUDES                                                       >>>>>>
00005 
00006 # include "Iguana/GLModels/interface/config.h"
00007 # include "Iguana/Framework/interface/IgTwig.h"
00008 
00009 //<<<<<< PUBLIC DEFINES                                                 >>>>>>
00010 //<<<<<< PUBLIC CONSTANTS                                               >>>>>>
00011 //<<<<<< PUBLIC TYPES                                                   >>>>>>
00012 
00013 class SoGroup;
00014 class SoNode;
00015 
00016 //<<<<<< PUBLIC VARIABLES                                               >>>>>>
00017 //<<<<<< PUBLIC FUNCTIONS                                               >>>>>>
00018 //<<<<<< CLASS DECLARATIONS                                             >>>>>>
00019 
00020 class IGUANA_GL_MODELS_API IgSoTwig : public IgSimpleTwig
00021 {
00022 public:
00023     IgSoTwig (IgTwig *parent,
00024               const std::string &name,
00025               bool selectable = false,
00026               bool traverse = true,
00027               bool visibility = true,
00028               bool cascade = true);
00029     explicit
00030     IgSoTwig (const std::string &name,
00031               bool selectable = false,
00032               bool traverse = true,
00033               bool visibility = true,
00034               bool cascade = true);
00035     ~IgSoTwig (void);
00036 
00037     // twig tree protocol
00038     virtual void        destroy (void);
00039     
00040     // inventor interface
00041     virtual SoGroup *   node (void) const;
00042     virtual SoGroup *   node (SoGroup *node);
00043     virtual SoGroup *   magic (void) const;
00044     virtual SoGroup *   magic (SoGroup *node);
00045 
00046     static IgSoTwig *   buildFrom (SoNode *from);
00047     
00048     // static SoPath *  onPick (void *, SoPickedPoint *pick);
00049     // static void      onSelect (void *, SoPath *selectionPath);
00050     
00051 protected:
00052     // virtual void     preDraw (void);
00053     // virtual void     draw (void);
00054     // virtual bool     okToRedraw (void) const;
00055     
00056     // virtual const SoPickedPoint *    currentPick (void) const;
00057     // virtual void                     currentPick (const SoPickedPoint *);
00058     
00059     // virtual IgSoTwig *findMatch (const SoNode *node);
00060     
00061     virtual void        cleared (IgTwig *parent);
00062     static IgSoTwig *   buildFromReps (SoNode *from);
00063     static IgSoTwig *   buildFromVis (SoNode *from, bool top);
00064     static IgSoTwig *   buildFromOther (SoNode *from);
00065 
00066 private:
00067     SoGroup             *m_magic;
00068     SoGroup             *m_node;
00069     bool                m_selectable;
00070 };
00071 
00072 //<<<<<< INLINE PUBLIC FUNCTIONS                                        >>>>>>
00073 //<<<<<< INLINE MEMBER FUNCTIONS                                        >>>>>>
00074 
00075 #endif // GL_MODELS_IG_SO_TWIG_H

Generated on Tue Jun 9 17:38:42 2009 for CMSSW by  doxygen 1.5.4