00001 #ifndef COIN_SOTOVRMLACTION_H
00002 #define COIN_SOTOVRMLACTION_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #include <Inventor/actions/SoAction.h>
00028 #include <Inventor/actions/SoSubAction.h>
00029
00030
00031 class COIN_DLL_API SoToVRMLAction : public SoAction {
00032 typedef SoAction inherited;
00033
00034 SO_ACTION_HEADER(SoToVRMLAction);
00035
00036 public:
00037 SoToVRMLAction(void);
00038 virtual ~SoToVRMLAction();
00039
00040 static void initClass(void);
00041
00042 virtual void apply(SoNode * node);
00043 virtual void apply(SoPath * path);
00044 virtual void apply(const SoPathList & pathlist, SbBool obeysrules = FALSE);
00045
00046 SoNode * getVRMLSceneGraph(void) const;
00047
00048 void expandSoFile(SbBool flag);
00049 SbBool areSoFileExpanded(void) const;
00050
00051 void setUrlName(const SbString name);
00052 SbString getUrlName(void) const;
00053
00054 void writeTexCoords(SbBool flag);
00055 SbBool areTexCoordWritten(void) const;
00056
00057 void expandTexture2Node(SbBool flag);
00058 SbBool areTexture2NodeExpanded(void) const;
00059
00060 void keepUnknownNodes(SbBool flag);
00061 SbBool areUnknownNodeKept(void) const;
00062
00063 void convertInlineNodes(SbBool flag);
00064 SbBool doConvertInlineNodes(void) const;
00065
00066 void conditionalConversion(SbBool flag);
00067 SbBool doConditionalConversion(void) const;
00068
00069 void setVerbosity(SbBool flag);
00070 SbBool isVerbose(void) const;
00071
00072 protected:
00073 virtual void beginTraversal(SoNode * node);
00074
00075 private:
00076 class SoToVRMLActionP * pimpl;
00077 friend class SoToVRMLActionP;
00078 };
00079
00080 #endif // !COIN_SOTOVRMLACTION_H