Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __CS_IVARIA_BUGPLUG_H__
00020 #define __CS_IVARIA_BUGPLUG_H__
00021
00026 #include "csutil/scf.h"
00027 #include "ivideo/graph3d.h"
00028
00029 struct iBugPlug;
00030 struct iMeshObject;
00031
00032 class csBox3;
00033 class csReversibleTransform;
00034 class csVector2;
00035 class csVector3;
00036
00042 struct iBugPlugRenderObject : public virtual iBase
00043 {
00044 SCF_INTERFACE(iBugPlugRenderObject, 2,0,0);
00046 virtual void Render (iGraphics3D* g3d, iBugPlug* bugplug) = 0;
00047 };
00048
00049
00054 struct iBugPlug : public virtual iBase
00055 {
00056 SCF_INTERFACE(iBugPlug,2,0,1);
00057
00058
00066 virtual void SetupDebugSector () = 0;
00067
00074 virtual void DebugSectorBox (const csBox3& box, float r, float g, float b,
00075 const char* name = 0, iMeshObject* mesh = 0,
00076 uint mixmode = CS_FX_COPY) = 0;
00077
00082 virtual void DebugSectorTriangle (const csVector3& s1, const csVector3& s2,
00083 const csVector3& s3, float r, float g, float b,
00084 uint mixmode = CS_FX_ADD) = 0;
00085
00093 virtual void SwitchDebugSector (const csReversibleTransform& trans,
00094 bool clear = true) = 0;
00095
00099 virtual bool CheckDebugSector () const = 0;
00100
00101
00102
00108 virtual void SetupDebugView () = 0;
00109
00113 virtual int DebugViewPoint (const csVector2& point) = 0;
00114
00118 virtual void DebugViewLine (int i1, int i2) = 0;
00119
00123 virtual void DebugViewBox (int i1, int i2) = 0;
00124
00128 virtual int DebugViewPointCount () const = 0;
00129
00133 virtual const csVector2& DebugViewGetPoint (int i) const = 0;
00134
00138 virtual int DebugViewLineCount () const = 0;
00139
00143 virtual void DebugViewGetLine (int i, int& i1, int& i2) const = 0;
00144
00148 virtual int DebugViewBoxCount () const = 0;
00149
00153 virtual void DebugViewGetBox (int i, int& i1, int& i2) const = 0;
00154
00159 virtual void DebugViewRenderObject (iBugPlugRenderObject* obj) = 0;
00160
00165 virtual void DebugViewClearScreen (bool cs) = 0;
00166
00171 virtual void SwitchDebugView (bool clear = true) = 0;
00172
00176 virtual bool CheckDebugView () const = 0;
00177
00178
00179
00187 virtual void AddCounter (const char* countername, int amount = 1) = 0;
00188
00197 virtual void AddCounterEnum (const char* countername, int enumval,
00198 int amount = 1) = 0;
00199
00205 virtual void ResetCounter (const char* countername, int value = 0) = 0;
00206
00211 virtual void RemoveCounter (const char* countername) = 0;
00212
00213
00214
00221 virtual bool ExecCommand (const char* command) = 0;
00222 };
00223
00224 #endif // __CS_IVARIA_BUGPLUG_H__
00225