XdkWrl: texturetransform.h Source File

Home | Hierarchy | Members | Alphabetical | Related Pages

# texturetransform.h

Go to the documentation of this file.

    00001 #ifndef XDKWRL_TEXTURETRANSFORM_H
    00002 #define XDKWRL_TEXTURETRANSFORM_H
    00003
    00004 #include <xdkwrl/node.h>
    00005 #include <xdkwrl/fieldtypes/sffloat.h>
    00006 #include <xdkwrl/fieldtypes/sfvec2f.h>
    00007
    00008 namespace wrl
    00009 {
    00010   //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    00011   // Interface of TextureTransform
    00012   //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    00013   class TextureTransform : public Node
    00014   {
    00015    public:
    00016      TextureTransform(const char* name="");
    00017      virtual ~TextureTransform();
    00018      virtual inline unsigned int nbFields() const;
    00019      virtual FieldHandle field(const std::string& n);
    00020      virtual FieldHandle field(unsigned int i);
    00021      virtual bool isSetToDefaultValue(unsigned int i) const;
    00022      virtual inline unsigned int nbEventsIn() const;
    00023      virtual EventInHandle eventIn(const std::string& n);
    00024      virtual EventInHandle eventIn(unsigned int i);
    00025      virtual inline unsigned int nbEventsOut() const;
    00026      virtual EventOutHandle eventOut(const std::string& n);
    00027      virtual EventOutHandle eventOut(unsigned int i);
    00028      inline const char* typeName() const;
    00029      virtual Node* duplicate() const;
    00030      virtual Node* duplicate(std::map<const Node*,Node*>&) const;
    00031      /*!@name Exposed Fields
    00032       * A field that is capable of receiving events via an eventIn to
    00033       * change its value(s), and generating events via an eventOut
    00034       * when its value(s) change.
    00035       */
    00036       //!@{
    00037       /*!
    00038        * See <a href="#_details" class="md">Detailed Description</a>
    00039        * for meaning of this field.
    00040        * Default value is set to
    00041        \code
    00042        center.setXY(0,0);
    00043        \endcode
    00044        */
    00045        SFVec2f    center;
    00046       /*!
    00047        * See <a href="#_details" class="md">Detailed Description</a>
    00048        * for meaning of this field.
    00049        * Default value is set to
    00050        \code
    00051        rotation = 0;
    00052        \endcode
    00053        */
    00054        SFFloat    rotation;
    00055       /*!
    00056        * See <a href="#_details" class="md">Detailed Description</a>
    00057        * for meaning of this field.
    00058        * Default value is set to
    00059        \code
    00060        scale.setXY(1,1);
    00061        \endcode
    00062        */
    00063        SFVec2f    scale;
    00064       /*!
    00065        * See <a href="#_details" class="md">Detailed Description</a>
    00066        * for meaning of this field.
    00067        * Default value is set to
    00068        \code
    00069        translation.setXY(0,0);
    00070        \endcode
    00071        */
    00072        SFVec2f    translation;
    00073      //!@}
    00074      /*!@name Fields
    00075       * A property or attribute of a node. Each node type has a fixed set
    00076       * of fields. Fields may contain various kinds of data and one or many
    00077       * values. Each field has a default value.
    00078       */
    00079       //!@{
    00080      //!@}
    00081      /*!@name Events In
    00082       *
    00083       */
    00084       //!@{
    00085       /*!
    00086        * Set event associated to exposedField center
    00087        */
    00088        EventIn<SFVec2f>    set_center;
    00089       /*!
    00090        * Set event associated to exposedField rotation
    00091        */
    00092        EventIn<SFFloat>    set_rotation;
    00093       /*!
    00094        * Set event associated to exposedField scale
    00095        */
    00096        EventIn<SFVec2f>    set_scale;
    00097       /*!
    00098        * Set event associated to exposedField translation
    00099        */
    00100        EventIn<SFVec2f>    set_translation;
    00101   //!@}
    00102      /*!@name Events Out
    00103       *
    00104       */
    00105       //!@{
    00106       /*!
    00107        * Changed event associated to exposedField center
    00108        */
    00109        EventOut<SFVec2f>    center_changed;
    00110       /*!
    00111        * Changed event associated to exposedField rotation
    00112        */
    00113        EventOut<SFFloat>    rotation_changed;
    00114       /*!
    00115        * Changed event associated to exposedField scale
    00116        */
    00117        EventOut<SFVec2f>    scale_changed;
    00118       /*!
    00119        * Changed event associated to exposedField translation
    00120        */
    00121        EventOut<SFVec2f>    translation_changed;
    00122   //!@}
    00123   };
    00124 };
    00125 //************************************************************
    00126 // Implementation of TextureTransform
    00127 //************************************************************
    00128 /*!
    00129  * Returns <code>"TextureTransform"</code>. Useful for printing.
    00130  */
    00131 inline const char*
    00132 wrl::TextureTransform::typeName() const
    00133 {
    00134   return "TextureTransform";
    00135 }
    00136 /*!
    00137  * Returns the number of fields (exposed or not) for this node type.
    00138  */
    00139 inline unsigned int
    00140 wrl::TextureTransform::nbFields() const
    00141 {
    00142    return 4;
    00143 }
    00144 /*!
    00145  * Returns the number of events in for this node type.
    00146  */
    00147 inline unsigned int
    00148 wrl::TextureTransform::nbEventsIn() const
    00149 {
    00150    return 0;
    00151 }
    00152 /*!
    00153  * Returns the number of events out for this node type.
    00154  */
    00155 inline unsigned int
    00156 wrl::TextureTransform::nbEventsOut() const
    00157 {
    00158    return 0;
    00159 }
    00160 #endif // XDKWRL_TEXTURETRANSFORM_H
    00161
    00162 // Local variables section.
    00163 // This is only used by emacs!
    00164 // Local Variables:
    00165 // ff-search-directories: ("../../" "../../../src/xdkwrl/nodes")
    00166 // End:

Generated on 28 Jun 2006 with version 1.4.4. |