XdkWrl: mfvec3f.h Source File

Home | Hierarchy | Members | Alphabetical | Related Pages

# mfvec3f.h

Go to the documentation of this file.

    00001 #ifndef XDKWRL_MFVEC3F_H
    00002 #define XDKWRL_MFVEC3F_H
    00003
    00004 #include <xdkwrl/config.h>
    00005 #include <xdkwrl/fieldtypes/sfvec3f.h>
    00006 #include <deque>
    00007 #include <algorithm>
    00008 #include <iterator>
    00009
    00010 namespace wrl
    00011 {
    00012   //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    00013   // Interface of  MFVec3f
    00014   //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    00015   /*! \ingroup fieldtypes
    00016    *
    00017    * A MFVec3f is a container of SFVec3f. It is implemented using a STL's
    00018    * deque so you can benefit from its interface. Most common
    00019    * functionnalities you would use are:
    00020    \code
    00021    MFVec3f mf;
    00022    mf.push_back(SFVec3f(0.0f,0.0f));
    00023    mf.push_front(SFVec3f(1.0f,0.0f));
    00024    mf[0].setX(1.0f);
    00025    \endcode
    00026    * but since it uses STL principles, you have all useful concepts such as
    00027    * iterator, algorithms, etc...
    00028    *
    00029    * Below is included the documentation for this field type from the ISO
    00030    * standard.
    00031    * \htmlinclude sfvec3f.html
    00032    */
    00033   class XDKWRL_EXPORT MFVec3f : public std::deque<SFVec3f>
    00034   {
    00035   public:
    00036     inline MFVec3f();
    00037     template <class T>
    00038     inline MFVec3f(T first,T last);
    00039     static inline const char* typeName();
    00040     static inline FieldTypeId typeId();
    00041     friend std::ostream& operator<<(std::ostream& s,const MFVec3f& f);
    00042   };
    00043   //************************************************************
    00044   // Implementation of MFVec3f
    00045   //************************************************************
    00046   inline MFVec3f::MFVec3f()
    00047   {
    00048   }
    00049   template <class T>
    00050   inline MFVec3f::MFVec3f(T first,T last)
    00051     : std::deque<SFVec3f>(first,last)
    00052   {
    00053   }
    00054   inline const char*
    00055   MFVec3f::typeName()
    00056   {
    00057     return "MFVec3f";
    00058   }
    00059   inline FieldTypeId
    00060   MFVec3f::typeId()
    00061   {
    00062     return mfVec3f;
    00063   }
    00064 }
    00065
    00066 #endif // XDKWRL_MFVEC3F_H
    00067
    00068 // Local variables section.
    00069 // This is only used by emacs!
    00070 // Local Variables:
    00071 // ff-search-directories: ("../../" "../../../src/xdkwrl/fieldtypes")
    00072 // End:

Generated on 5 Jan 2007 with version 1.5.1. |