From 0ea5fc66924303d1bf73ba283a383e2aadee02f2 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sat, 11 Aug 2018 20:21:34 +0200 Subject: Initial commit --- docs/doxygen/nel/a03145.html | 1076 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 1076 insertions(+) create mode 100644 docs/doxygen/nel/a03145.html (limited to 'docs/doxygen/nel/a03145.html') diff --git a/docs/doxygen/nel/a03145.html b/docs/doxygen/nel/a03145.html new file mode 100644 index 00000000..7d23535d --- /dev/null +++ b/docs/doxygen/nel/a03145.html @@ -0,0 +1,1076 @@ + + +NeL: NL3D::CPSBasisSpinner class Reference + + + +
+

NL3D::CPSBasisSpinner Class Reference

#include <ps_plane_basis_maker.h> +

+

Inheritance diagram for NL3D::CPSBasisSpinner: +

+ +NL3D::CPSAttribMakerT< CPlaneBasis, CSpinnerFunctor > +NL3D::CPSAttribMaker< CPlaneBasis > +NL3D::CPSAttribMakerBase +NLMISC::IStreamable +NLMISC::IClassable + +

Detailed Description

+this is a spinner : this compute a basis by applying a rotation over the given axis +

+ +

+Definition at line 214 of file ps_plane_basis_maker.h. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Types

typedef CSpinnerFunctor functor_type
 the type of the functor object

typedef CPlaneBasis value_type
 the type of the attribute to be produced


Public Member Functions

CPSAttribMakerBaseclone () const
 CPSBasisSpinner ()
virtual void deleteElement (uint32 index)
 delete an element, given its index. this must be called only if memory management is used.

virtual CPlaneBasis get (float input)
virtual CPlaneBasis get (CPSLocated *loc, uint32 index)
 compute one value of the attribute for the given index

virtual bool getClamping (void) const
virtual std::string getClassName ()=0
virtual CPSInputType getInput (void) const
virtual CPlaneBasis getMaxValue (void) const
 get the min value, or an evalution that is guaranteed to be < to it (meaningful for ordered set only)

virtual CPlaneBasis getMinValue (void) const
 get the max value, or an evalution that is guaranteed to be > to it (meaningful for ordered set only)

float getNbCycles (void) const
virtual const char * getType ()
 inherited from CPSAttribMakerBase. Template specialization will do the job

virtual bool hasCustomInput (void)
bool hasMemory (void) const
bool isClampingSupported (void) const
virtual void newElement (CPSLocated *emitterLocated, uint32 emitterIndex)
 NLMISC_DECLARE_CLASS (CPSBasisSpinner)
virtual void resize (uint32 capacity, uint32 nbPresentElements)
virtual void serial (NLMISC::IStream &f) throw (NLMISC::EStream)
 serialisation of the object

virtual void setClamping (bool enable=true)
virtual void setInput (const CPSInputType &input)
void setNbCycles (float nbCycles)

Data Fields

CSpinnerFunctor _F
 the functor object


Protected Attributes

bool _HasMemory
float _NbCycles
+


Member Typedef Documentation

+

+ + + + +
+ + +
typedef CSpinnerFunctor NL3D::CPSAttribMakerT< CPlaneBasis , CSpinnerFunctor >::functor_type [inherited] +
+
+ + + + + +
+   + + +

+the type of the functor object +

+ +

+Definition at line 174 of file ps_attrib_maker_helper.h.

+

+ + + + +
+ + +
typedef CPlaneBasis NL3D::CPSAttribMakerT< CPlaneBasis , CSpinnerFunctor >::value_type [inherited] +
+
+ + + + + +
+   + + +

+the type of the attribute to be produced +

+ +

+Definition at line 171 of file ps_attrib_maker_helper.h.

+


Constructor & Destructor Documentation

+

+ + + + +
+ + + + + + + + + +
NL3D::CPSBasisSpinner::CPSBasisSpinner  )  [inline]
+
+ + + + + +
+   + + +

+ +

+Definition at line 217 of file ps_plane_basis_maker.h. +

+

00217 : CPSAttribMakerT<CPlaneBasis, CSpinnerFunctor>(1) {}
+
+


Member Function Documentation

+

+ + + + +
+ + + + + + + + + +
CPSAttribMakerBase* NL3D::CPSBasisSpinner::clone  )  const [inline, virtual]
+
+ + + + + +
+   + + +

+ +

+Implements NL3D::CPSAttribMakerBase. +

+Definition at line 219 of file ps_plane_basis_maker.h. +

+

00219 { return new CPSBasisSpinner(*this); }
+
+

+ + + + +
+ + + + + + + + + + +
virtual void NL3D::CPSAttribMaker< CPlaneBasis >::deleteElement uint32  index  )  [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+delete an element, given its index. this must be called only if memory management is used. +

+ +

+Reimplemented in NL3D::CPSAttribMakerBinOp< CPlaneBasis >, and NL3D::CPSAttribMakerMemoryBase< CPlaneBasis >. +

+Definition at line 285 of file ps_attrib_maker.h. +

+Referenced by NL3D::CPSRotated3DPlaneParticle::deletePlaneBasisElement(). +

+

00285 { nlassert(false) ; }
+
+

+ + + + +
+ + + + + + + + + + +
virtual CPlaneBasis NL3D::CPSAttribMakerT< CPlaneBasis , CSpinnerFunctor >::get float  input  )  [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+Direct lookup of the result value from a float input (if it makes sense). This bypass what was set with setInput The input must be in [0, 1[ +

+Reimplemented from NL3D::CPSAttribMaker< CPlaneBasis >. +

+Definition at line 60 of file ps_attrib_maker_helper.h. +

+

00061                 {
+00062                         NLMISC::OptFastFloorBegin();
+00063                         nlassert(input >= 0.f && input <= 1.f);
+00064                         return _F(input);
+00065                         NLMISC::OptFastFloorEnd();
+00066                 }
+
+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
virtual CPlaneBasis NL3D::CPSAttribMakerT< CPlaneBasis , CSpinnerFunctor >::get CPSLocated loc,
uint32  index
[virtual, inherited]
+
+ + + + + +
+   + + +

+compute one value of the attribute for the given index +

+ +

+Implements NL3D::CPSAttribMaker< CPlaneBasis >.

+

+ + + + +
+ + + + + + + + + + +
virtual bool NL3D::CPSAttribMakerT< CPlaneBasis , CSpinnerFunctor >::getClamping void   )  const [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+Test if the clamping is enabled.

See also:
isClampingSupported()
+ +

+Reimplemented from NL3D::CPSAttribMaker< CPlaneBasis >. +

+Definition at line 167 of file ps_attrib_maker_helper.h. +

+

00167 { return _Clamp; };
+
+

+ + + + +
+ + + + + + + + + +
virtual std::string NLMISC::IClassable::getClassName  )  [pure virtual, inherited]
+
+ + + + + +
+   + + +

+ +

+Implemented in NLAIAGENT::CNumericIndex, NLAIC::IPointerGestion, NLAIC::CIdentType, and CAutomataDesc. +

+Referenced by NLMISC::CClassRegistry::checkObject(), and NL3D::GetTextureSize().

+

+ + + + +
+ + + + + + + + + + +
virtual CPSInputType NL3D::CPSAttribMakerT< CPlaneBasis , CSpinnerFunctor >::getInput void   )  const [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+get the type of input (if supported). The default return attrDate

See also:
hasCustomInput()
+ +

+Reimplemented from NL3D::CPSAttribMaker< CPlaneBasis >. +

+Definition at line 150 of file ps_attrib_maker_helper.h. +

+

00150 { return _InputType; }
+
+

+ + + + +
+ + + + + + + + + + +
virtual CPlaneBasis NL3D::CPSAttribMaker< CPlaneBasis >::getMaxValue void   )  const [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+get the min value, or an evalution that is guaranteed to be < to it (meaningful for ordered set only) +

+ +

+Reimplemented in NL3D::CPSAttribMakerBinOp< CPlaneBasis >, NL3D::CPSValueBlender< CPlaneBasis >, and NL3D::CPSValueGradient< CPlaneBasis >. +

+Definition at line 217 of file ps_attrib_maker.h. +

+

00217 { return T() ; /* no mean by default */ }
+
+

+ + + + +
+ + + + + + + + + + +
virtual CPlaneBasis NL3D::CPSAttribMaker< CPlaneBasis >::getMinValue void   )  const [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+get the max value, or an evalution that is guaranteed to be > to it (meaningful for ordered set only) +

+ +

+Reimplemented in NL3D::CPSAttribMakerBinOp< CPlaneBasis >, NL3D::CPSValueBlender< CPlaneBasis >, and NL3D::CPSValueGradient< CPlaneBasis >. +

+Definition at line 215 of file ps_attrib_maker.h. +

+

00215 { return T() ; /* no mean by default */ }
+
+

+ + + + +
+ + + + + + + + + + +
float NL3D::CPSAttribMaker< CPlaneBasis >::getNbCycles void   )  const [inline, inherited]
+
+ + + + + +
+   + + +

+Retrieve the number of cycles

See also:
setNbCycles()
+ +

+Definition at line 236 of file ps_attrib_maker.h. +

+

00236 { return _NbCycles ; }
+
+

+ + + + +
+ + + + + + + + + + +
const char * NL3D::CPSAttribMaker< CPlaneBasis >::getType void   )  [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+inherited from CPSAttribMakerBase. Template specialization will do the job +

+ +

+Implements NL3D::CPSAttribMakerBase. +

+Definition at line 147 of file ps_attrib_maker.h. +

+

00147 { return "UNKNOWN"; }
+
+

+ + + + +
+ + + + + + + + + + +
virtual bool NL3D::CPSAttribMakerT< CPlaneBasis , CSpinnerFunctor >::hasCustomInput void   )  [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+tells wether one may choose one attribute from a CPSLocated to use as an input. If false, the input(s) is fixed For this class, it is supported +

+Reimplemented from NL3D::CPSAttribMaker< CPlaneBasis >. +

+Definition at line 139 of file ps_attrib_maker_helper.h. +

+

00139 { return true; } 
+
+

+ + + + +
+ + + + + + + + + + +
bool NL3D::CPSAttribMaker< CPlaneBasis >::hasMemory void   )  const [inline, inherited]
+
+ + + + + +
+   + + +

+Some attribute makers may hold memory. this return true when this is the case. This also mean that you must call newElement, deleteElement, and resize, when it is called for the owning object (which is likely to be a CPSLocatedBindable) +

+Definition at line 282 of file ps_attrib_maker.h. +

+Referenced by NL3D::CPSRotated3DPlaneParticle::deletePlaneBasisElement(), NL3D::CPSRotated3DPlaneParticle::newPlaneBasisElement(), and NL3D::CPSRotated3DPlaneParticle::resizePlaneBasis(). +

+

00282 { return _HasMemory ; }
+
+

+ + + + +
+ + + + + + + + + + +
bool NL3D::CPSAttribMakerT< CPlaneBasis , CSpinnerFunctor >::isClampingSupported void   )  const [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+tells wether clamping is supported for the input (value can't go above MaxInputValue) +

+Reimplemented from NL3D::CPSAttribMaker< CPlaneBasis >. +

+Definition at line 155 of file ps_attrib_maker_helper.h. +

+

00155 { return true; }
+
+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
virtual void NL3D::CPSAttribMaker< CPlaneBasis >::newElement CPSLocated emitterLocated,
uint32  emitterIndex
[inline, virtual, inherited]
+
+ + + + + +
+   + + +

+create a new element, and provides the emitter, this must be called only if this attribute maker has its own memory +

+Reimplemented in NL3D::CPSAttribMakerBinOp< CPlaneBasis >, and NL3D::CPSAttribMakerMemoryBase< CPlaneBasis >. +

+Definition at line 290 of file ps_attrib_maker.h. +

+Referenced by NL3D::CPSRotated3DPlaneParticle::newPlaneBasisElement(). +

+

00290 { nlassert(false) ; }
+
+

+ + + + +
+ + + + + + + + + + +
NL3D::CPSBasisSpinner::NLMISC_DECLARE_CLASS CPSBasisSpinner   ) 
+
+ + + + + +
+   + + +

+

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
virtual void NL3D::CPSAttribMaker< CPlaneBasis >::resize uint32  capacity,
uint32  nbPresentElements
[inline, virtual, inherited]
+
+ + + + + +
+   + + +

+set a new capacity for the memorized attribute, and a number of used element. This usually is 0 , but during edition, this may not be ... so new element are created. this must be called only if this attribute maker has its own memory +

+Reimplemented in NL3D::CPSAttribMakerBinOp< CPlaneBasis >, and NL3D::CPSAttribMakerMemoryBase< CPlaneBasis >. +

+Definition at line 296 of file ps_attrib_maker.h. +

+Referenced by NL3D::CPSRotated3DPlaneParticle::resizePlaneBasis(). +

+

00296 { nlassert(false) ; }
+
+

+ + + + +
+ + + + + + + + + + +
virtual void NL3D::CPSAttribMakerT< CPlaneBasis , CSpinnerFunctor >::serial NLMISC::IStream f  )  throw (NLMISC::EStream) [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+serialisation of the object +

+The same as make4, but with n replication instead of 4

See also:
make4
+ +

+Reimplemented from NL3D::CPSAttribMaker< CPlaneBasis >. +

+Definition at line 104 of file ps_attrib_maker_helper.h. +

+

00105                 {
+00106                         sint ver = f.serialVersion(2);
+00107                         CPSAttribMaker<T>::serial(f);
+00108                     f.serial(_F);
+00109                         switch (ver)
+00110                         {
+00111                                 case 1:
+00112                                 {
+00113                                         CPSInputType it;
+00114                                         f.serialEnum(it.InputType);
+00115                                         _InputType = it;
+00116                                 }
+00117                                 break;
+00118                                 case 2:
+00119                                         f.serial(_InputType);
+00120                                 break;
+00121                         }
+00122                         f.serial(_Clamp);
+00123                 }
+
+

+ + + + +
+ + + + + + + + + + +
virtual void NL3D::CPSAttribMakerT< CPlaneBasis , CSpinnerFunctor >::setClamping bool  enable = true  )  [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+Enable, disable the clamping of input values.

See also:
isClampingSupported()
+ +

+Reimplemented from NL3D::CPSAttribMaker< CPlaneBasis >. +

+Definition at line 161 of file ps_attrib_maker_helper.h. +

+

00161 { _Clamp = enable; };
+
+

+ + + + +
+ + + + + + + + + + +
virtual void NL3D::CPSAttribMakerT< CPlaneBasis , CSpinnerFunctor >::setInput const CPSInputType input  )  [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+set a new input type +

+Reimplemented from NL3D::CPSAttribMaker< CPlaneBasis >. +

+Definition at line 144 of file ps_attrib_maker_helper.h. +

+

00144 { _InputType = input; }
+
+

+ + + + +
+ + + + + + + + + + +
void NL3D::CPSAttribMaker< CPlaneBasis >::setNbCycles float  nbCycles  )  [inline, inherited]
+
+ + + + + +
+   + + +

+Set the number of cycles that must be done during the life of a particle, or the number of cycle per second for a particle that has no life limit. It is used to multiply the input used by this attribute maker It must be >= 0 +

+Definition at line 227 of file ps_attrib_maker.h. +

+

00228                 { 
+00229                         nlassert(nbCycles >= 0) ;
+00230                         _NbCycles = nbCycles ; 
+00231                 }
+
+


Field Documentation

+

+ + + + +
+ + +
CSpinnerFunctor NL3D::CPSAttribMakerT< CPlaneBasis , CSpinnerFunctor >::_F [inherited] +
+
+ + + + + +
+   + + +

+the functor object +

+ +

+Definition at line 55 of file ps_attrib_maker_helper.h.

+

+ + + + +
+ + +
bool NL3D::CPSAttribMaker< CPlaneBasis >::_HasMemory [protected, inherited] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 304 of file ps_attrib_maker.h.

+

+ + + + +
+ + +
float NL3D::CPSAttribMaker< CPlaneBasis >::_NbCycles [protected, inherited] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 301 of file ps_attrib_maker.h.

+


The documentation for this class was generated from the following file: +
Generated on Tue Mar 16 07:04:18 2004 for NeL by + +doxygen +1.3.6
+ + -- cgit v1.2.1