Home Hierarchy Members Alphabetical Related Pages

cylinder.h

Go to the documentation of this file.
00001 #ifndef XDKWRL_CYLINDER_H
00002 #define XDKWRL_CYLINDER_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 Cylinder
00012   //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00013   class Cylinder : public Node
00014   {
00015    public:
00016      Cylinder(const char* name="");
00017      virtual ~Cylinder();
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        bottom = true;
00050         \endcode
00051        */
00052        SFBool     bottom;
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        radius = 1;
00068         \endcode
00069        */
00070        SFFloat    radius;
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        side = true;
00077         \endcode
00078        */
00079        SFBool     side;
00080       /*!
00081        * See <a href="#_details" class="md">Detailed Description</a>
00082        * for meaning of this field.
00083        * Default value is set to 
00084        \code
00085        top = true;
00086         \endcode
00087        */
00088        SFBool     top;
00089      //!@}
00090      /*!@name Events In
00091       * 
00092       */
00093       //!@{
00094   //!@}
00095      /*!@name Events Out
00096       * 
00097       */
00098       //!@{
00099   //!@}
00100   };
00101 };
00102 //************************************************************
00103 // Implementation of Cylinder
00104 //************************************************************
00105 /*!
00106  * Returns <code>"Cylinder"</code>. Useful for printing.
00107  */
00108 inline const char*
00109 wrl::Cylinder::typeName() const
00110 {
00111   return "Cylinder";
00112 }
00113 /*!
00114  * Returns the number of fields (exposed or not) for this node type.
00115  */
00116 inline unsigned int
00117 wrl::Cylinder::nbFields() const
00118 {
00119    return 5;
00120 }
00121 /*!
00122  * Returns the number of events in for this node type.
00123  */
00124 inline unsigned int
00125 wrl::Cylinder::nbEventsIn() const
00126 {
00127    return 0;
00128 }
00129 /*!
00130  * Returns the number of events out for this node type.
00131  */
00132 inline unsigned int
00133 wrl::Cylinder::nbEventsOut() const
00134 {
00135    return 0;
00136 }
00137 #endif // XDKWRL_CYLINDER_H
00138 
00139 // Local variables section.
00140 // This is only used by emacs!
00141 // Local Variables:
00142 // ff-search-directories: ("../../" "../../../src/xdkwrl/nodes")
00143 // End:

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