SoSeparatorWrapper.h

00001 /****************************************************************************
00002  * Copyright 2007 Evan Drumwright
00003  * This library is distributed under the terms of the GNU General Public 
00004  * License (found in COPYING).
00005  ****************************************************************************/
00006 
00007 #ifndef _SO_SEPARATOR_WRAPPER_H_
00008 #define _SO_SEPARATOR_WRAPPER_H_
00009 
00010 #include <Inventor/nodes/SoSeparator.h>
00011 #include <Physsim/Base.h>
00012 
00013 // REMOVE THIS
00014 #include <iostream>
00015 
00016 class SoSeparator;
00017 
00018 namespace Physsim {
00019 
00021 class SoSeparatorWrapper : public Base
00022 {
00023         public:
00024                 SoSeparatorWrapper() { _separator = new SoSeparator; _separator->ref(); }
00025                 SoSeparatorWrapper(SoNode* n) { _separator = new SoSeparator; _separator->addChild(n); _separator->ref(); }
00026                 SoSeparatorWrapper(const std::string& filename);
00027                 ~SoSeparatorWrapper() { _separator->unref(); }
00028                 virtual void load_from_xml(XMLTreeConstPtr node, std::map<std::string, BasePtr>& id_map);
00029 
00030                 virtual void save_to_xml(XMLTreePtr node, std::list<BaseConstPtr>& shared_objects) const;
00031                 SoSeparator* get_separator() { return _separator; }
00032 
00033         private:
00034                 SoSeparator* _separator;
00035 }; // end class
00036 
00037 } // end namespace
00038 
00039 #endif
00040 

Generated on Wed Oct 24 14:54:22 2007 for Physsim by  doxygen 1.5.1