fix for building with collada and some other warnings
[blender.git] / source / gameengine / Expressions / FloatValue.h
1 /*
2  * FloatValue.h: interface for the CFloatValue class.
3  * $Id$
4  * Copyright (c) 1996-2000 Erwin Coumans <coockie@acm.org>
5  *
6  * Permission to use, copy, modify, distribute and sell this software
7  * and its documentation for any purpose is hereby granted without fee,
8  * provided that the above copyright notice appear in all copies and
9  * that both that copyright notice and this permission notice appear
10  * in supporting documentation.  Erwin Coumans makes no
11  * representations about the suitability of this software for any
12  * purpose.  It is provided "as is" without express or implied warranty.
13  *
14  */
15
16 /** \file FloatValue.h
17  *  \ingroup expressions
18  */
19
20 #if !defined _FLOATVALUE_H
21 #define _FLOATVALUE_H
22
23 #include "Value.h"
24
25 class CFloatValue : public CPropValue 
26 {
27         //PLUGIN_DECLARE_SERIAL (CFloatValue,CValue)
28 public:
29         CFloatValue();
30         CFloatValue(float fl);
31         CFloatValue(float fl,const char *name,AllocationTYPE alloctype=CValue::HEAPVALUE);
32
33         virtual const STR_String & GetText();
34
35         void Configure(CValue* menuvalue);
36         virtual double GetNumber();
37         virtual void SetValue(CValue* newval);
38         float GetFloat();
39         void SetFloat(float fl);
40         virtual ~CFloatValue();
41         virtual CValue* GetReplica();
42         virtual CValue* Calc(VALUE_OPERATOR op, CValue *val);
43         virtual CValue* CalcFinal(VALUE_DATA_TYPE dtype, VALUE_OPERATOR op, CValue *val);
44 #ifdef WITH_PYTHON
45         virtual PyObject*       ConvertValueToPython();
46 #endif
47
48 protected:
49         float m_float;
50         STR_String* m_pstrRep;
51
52
53 #ifdef WITH_CXX_GUARDEDALLOC
54 public:
55         void *operator new(size_t num_bytes) { return MEM_mallocN(num_bytes, "GE:CFloatValue"); }
56         void operator delete( void *mem ) { MEM_freeN(mem); }
57 #endif
58 };
59
60 #endif // !defined _FLOATVALUE_H
61