Home | Hierarchy | Members | Alphabetical | Related Pages |
00001 #ifndef XDKWRL_AUDIOCLIP_H 00002 #define XDKWRL_AUDIOCLIP_H 00003 00004 #include <xdkwrl/config.h> 00005 #include <xdkwrl/node.h> 00006 #include <xdkwrl/fieldtypes/mfstring.h> 00007 #include <xdkwrl/fieldtypes/sfbool.h> 00008 #include <xdkwrl/fieldtypes/sffloat.h> 00009 #include <xdkwrl/fieldtypes/sfstring.h> 00010 #include <xdkwrl/fieldtypes/sftime.h> 00011 00012 namespace wrl 00013 { 00014 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 00015 // Interface of AudioClip 00016 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 00017 class XDKWRL_EXPORT AudioClip : public Node 00018 { 00019 public: 00020 AudioClip(const char* name=""); 00021 virtual ~AudioClip(); 00022 virtual inline unsigned int nbFields() const; 00023 virtual FieldHandle field(const std::string& n); 00024 virtual FieldHandle field(unsigned int i); 00025 virtual bool isSetToDefaultValue(unsigned int i) const; 00026 virtual inline unsigned int nbEventsIn() const; 00027 virtual EventInHandle eventIn(const std::string& n); 00028 virtual EventInHandle eventIn(unsigned int i); 00029 virtual inline unsigned int nbEventsOut() const; 00030 virtual EventOutHandle eventOut(const std::string& n); 00031 virtual EventOutHandle eventOut(unsigned int i); 00032 inline const char* typeName() const; 00033 virtual Node* duplicate() const; 00034 virtual Node* duplicate(std::map<const Node*,Node*>&) const; 00035 /*!@name Exposed Fields 00036 * A field that is capable of receiving events via an eventIn to 00037 * change its value(s), and generating events via an eventOut 00038 * when its value(s) change. 00039 */ 00040 //!@{ 00041 /*! 00042 * See <a href="#_details" class="md">Detailed Description</a> 00043 * for meaning of this field. 00044 * Default value is set to 00045 \code 00046 description = string(""); 00047 \endcode 00048 */ 00049 SFString description; 00050 /*! 00051 * See <a href="#_details" class="md">Detailed Description</a> 00052 * for meaning of this field. 00053 * Default value is set to 00054 \code 00055 loop = false; 00056 \endcode 00057 */ 00058 SFBool loop; 00059 /*! 00060 * See <a href="#_details" class="md">Detailed Description</a> 00061 * for meaning of this field. 00062 * Default value is set to 00063 \code 00064 pitch = 1.0f; 00065 \endcode 00066 */ 00067 SFFloat pitch; 00068 /*! 00069 * See <a href="#_details" class="md">Detailed Description</a> 00070 * for meaning of this field. 00071 * Default value is set to 00072 \code 00073 startTime.setNbSeconds(0); 00074 \endcode 00075 */ 00076 SFTime startTime; 00077 /*! 00078 * See <a href="#_details" class="md">Detailed Description</a> 00079 * for meaning of this field. 00080 * Default value is set to 00081 \code 00082 stopTime.setNbSeconds(0); 00083 \endcode 00084 */ 00085 SFTime stopTime; 00086 /*! 00087 * See <a href="#_details" class="md">Detailed Description</a> 00088 * for meaning of this field. 00089 * Default value is set to MFString default value 00090 */ 00091 MFString url; 00092 //!@} 00093 /*!@name Fields 00094 * A property or attribute of a node. Each node type has a fixed set 00095 * of fields. Fields may contain various kinds of data and one or many 00096 * values. Each field has a default value. 00097 */ 00098 //!@{ 00099 //!@} 00100 /*!@name Events In 00101 * 00102 */ 00103 //!@{ 00104 /*! 00105 * Set event associated to exposedField description 00106 */ 00107 EventIn<SFString> set_description; 00108 /*! 00109 * Set event associated to exposedField loop 00110 */ 00111 EventIn<SFBool> set_loop; 00112 /*! 00113 * Set event associated to exposedField pitch 00114 */ 00115 EventIn<SFFloat> set_pitch; 00116 /*! 00117 * Set event associated to exposedField startTime 00118 */ 00119 EventIn<SFTime> set_startTime; 00120 /*! 00121 * Set event associated to exposedField stopTime 00122 */ 00123 EventIn<SFTime> set_stopTime; 00124 /*! 00125 * Set event associated to exposedField url 00126 */ 00127 EventIn<MFString> set_url; 00128 //!@} 00129 /*!@name Events Out 00130 * 00131 */ 00132 //!@{ 00133 /*! 00134 * See <a href="#_details" class="md">Detailed Description</a> 00135 * for meaning of this event. 00136 */ 00137 EventOut<SFTime> duration_changed; 00138 /*! 00139 * See <a href="#_details" class="md">Detailed Description</a> 00140 * for meaning of this event. 00141 */ 00142 EventOut<SFBool> isActive; 00143 /*! 00144 * Changed event associated to exposedField description 00145 */ 00146 EventOut<SFString> description_changed; 00147 /*! 00148 * Changed event associated to exposedField loop 00149 */ 00150 EventOut<SFBool> loop_changed; 00151 /*! 00152 * Changed event associated to exposedField pitch 00153 */ 00154 EventOut<SFFloat> pitch_changed; 00155 /*! 00156 * Changed event associated to exposedField startTime 00157 */ 00158 EventOut<SFTime> startTime_changed; 00159 /*! 00160 * Changed event associated to exposedField stopTime 00161 */ 00162 EventOut<SFTime> stopTime_changed; 00163 /*! 00164 * Changed event associated to exposedField url 00165 */ 00166 EventOut<MFString> url_changed; 00167 //!@} 00168 }; 00169 }; 00170 //************************************************************ 00171 // Implementation of AudioClip 00172 //************************************************************ 00173 /*! 00174 * Returns <code>"AudioClip"</code>. Useful for printing. 00175 */ 00176 inline const char* 00177 wrl::AudioClip::typeName() const 00178 { 00179 return "AudioClip"; 00180 } 00181 /*! 00182 * Returns the number of fields (exposed or not) for this node type. 00183 */ 00184 inline unsigned int 00185 wrl::AudioClip::nbFields() const 00186 { 00187 return 6; 00188 } 00189 /*! 00190 * Returns the number of events in for this node type. 00191 */ 00192 inline unsigned int 00193 wrl::AudioClip::nbEventsIn() const 00194 { 00195 return 0; 00196 } 00197 /*! 00198 * Returns the number of events out for this node type. 00199 */ 00200 inline unsigned int 00201 wrl::AudioClip::nbEventsOut() const 00202 { 00203 return 2; 00204 } 00205 #endif // XDKWRL_AUDIOCLIP_H 00206 00207 // Local variables section. 00208 // This is only used by emacs! 00209 // Local Variables: 00210 // ff-search-directories: ("../../" "../../../src/xdkwrl/nodes") 00211 // End:
Generated on 5 Jan 2007 with
![]() |
|