00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __CS_IMESH_LGHTNG_H__
00020 #define __CS_IMESH_LGHTNG_H__
00021
00022 #include "csutil/scf.h"
00023 #include "csutil/garray.h"
00024 #include "csutil/cscolor.h"
00025 #include "csgeom/vector2.h"
00026
00027 struct iMaterialWrapper;
00028
00029 SCF_VERSION (iLightningFactoryState, 0, 0, 1);
00030
00032 struct iLightningFactoryState : public iBase
00033 {
00035 virtual void SetMaterialWrapper (iMaterialWrapper* material) = 0;
00037 virtual iMaterialWrapper* GetMaterialWrapper () const = 0;
00039 virtual void SetMixMode (uint mode) = 0;
00041 virtual uint GetMixMode () const = 0;
00042
00044 virtual void SetOrigin (const csVector3& pos) = 0;
00046 virtual const csVector3& GetOrigin () const = 0;
00047
00049 virtual float GetLength () const = 0;
00051 virtual void SetLength (float value) = 0;
00053 virtual int GetPointCount () const = 0;
00055 virtual void SetPointCount (int n) = 0;
00057 virtual float GetWildness () const = 0;
00059 virtual void SetWildness (float value) = 0;
00061 virtual float GetVibration () const = 0;
00063 virtual void SetVibration (float value) = 0;
00065 virtual void SetDirectional (const csVector3 &pos) = 0;
00067 virtual const csVector3& GetDirectional () = 0;
00069 virtual void SetUpdateInterval (csTicks value) = 0;
00071 virtual float GetBandWidth () const = 0;
00073 virtual void SetBandWidth (float value) = 0;
00074 };
00075
00076 SCF_VERSION (iLightningState, 0, 0, 1);
00077
00079 struct iLightningState : public iLightningFactoryState
00080 {
00081 };
00082
00083 #endif // __CS_IMESH_LGHTNG_H__
00084