Home Hierarchy Members Alphabetical Related Pages

cone.h

Go to the documentation of this file.
00001 #ifndef XDKWRL_CONE_H
00002 #define XDKWRL_CONE_H
00003 
00004 #include <xdkwrl/node.h>
00005 #include <xdkwrl/fieldtypes/sfbool.h>
00006 #include <xdkwrl/fieldtypes/sffloat.h>
00007 
00008 namespace wrl
00009 {
00010   //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00011   // Interface of Cone
00012   //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00013   class Cone : public Node
00014   {
00015    public:
00016      Cone(const char* name="");
00017      virtual ~Cone();
00018      virtual inline unsigned int nbFields() const;
00019      virtual FieldHandle field(const std::string& n);
00020      virtual FieldHandle field(const unsigned int i);
00021      virtual bool isSetToDefaultValue(const unsigned int i) const;
00022      virtual inline unsigned int nbEventsIn() const;
00023      virtual EventInHandle eventIn(const std::string& n);
00024      virtual EventInHandle eventIn(const unsigned int i);
00025      virtual inline unsigned int nbEventsOut() const;
00026      virtual EventOutHandle eventOut(const std::string& n);
00027      virtual EventOutHandle eventOut(const 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      /*!@name Fields
00039       * A property or attribute of a node. Each node type has a fixed set
00040       * of fields. Fields may contain various kinds of data and one or many
00041       * values. Each field has a default value.
00042       */
00043       //!@{
00044       /*!
00045        * See <a href="#_details" class="md">Detailed Description</a>
00046        * for meaning of this field.
00047        * Default value is set to 
00048        \code
00049        bottomRadius = 1;
00050         \endcode
00051        */
00052        SFFloat    bottomRadius;
00053       /*!
00054        * See <a href="#_details" class="md">Detailed Description</a>
00055        * for meaning of this field.
00056        * Default value is set to 
00057        \code
00058        height = 2;
00059         \endcode
00060        */
00061        SFFloat    height;
00062       /*!
00063        * See <a href="#_details" class="md">Detailed Description</a>
00064        * for meaning of this field.
00065        * Default value is set to 
00066        \code
00067        side = true;
00068         \endcode
00069        */
00070        SFBool     side;
00071       /*!
00072        * See <a href="#_details" class="md">Detailed Description</a>
00073        * for meaning of this field.
00074        * Default value is set to 
00075        \code
00076        bottom = true;
00077         \endcode
00078        */
00079        SFBool     bottom;
00080      //!@}
00081      /*!@name Events In
00082       * 
00083       */
00084       //!@{
00085   //!@}
00086      /*!@name Events Out
00087       * 
00088       */
00089       //!@{
00090   //!@}
00091   };
00092 };
00093 //************************************************************
00094 // Implementation of Cone
00095 //************************************************************
00096 /*!
00097  * Returns <code>"Cone"</code>. Useful for printing.
00098  */
00099 inline const char*
00100 wrl::Cone::typeName() const
00101 {
00102   return "Cone";
00103 }
00104 /*!
00105  * Returns the number of fields (exposed or not) for this node type.
00106  */
00107 inline unsigned int
00108 wrl::Cone::nbFields() const
00109 {
00110    return 4;
00111 }
00112 /*!
00113  * Returns the number of events in for this node type.
00114  */
00115 inline unsigned int
00116 wrl::Cone::nbEventsIn() const
00117 {
00118    return 0;
00119 }
00120 /*!
00121  * Returns the number of events out for this node type.
00122  */
00123 inline unsigned int
00124 wrl::Cone::nbEventsOut() const
00125 {
00126    return 0;
00127 }
00128 #endif // XDKWRL_CONE_H
00129 
00130 // Local variables section.
00131 // This is only used by emacs!
00132 // Local Variables:
00133 // ff-search-directories: ("../../" "../../../src/xdkwrl/nodes")
00134 // End:

Generated on 24 Feb 2005 with doxygen version 1.3.9.1. Valid HTML 4.0! Valid CSS!