code cleanup: make header defines more consistent, JOYSENSOR header guard had a typo...
[blender-staging.git] / source / gameengine / Expressions / ConstExpr.h
1 /*
2  * ConstExpr.h: interface for the CConstExpr class.
3  * Copyright (c) 1996-2000 Erwin Coumans <coockie@acm.org>
4  *
5  * Permission to use, copy, modify, distribute and sell this software
6  * and its documentation for any purpose is hereby granted without fee,
7  * provided that the above copyright notice appear in all copies and
8  * that both that copyright notice and this permission notice appear
9  * in supporting documentation.  Erwin Coumans makes no
10  * representations about the suitability of this software for any
11  * purpose.  It is provided "as is" without express or implied warranty.
12  *
13  */
14
15 /** \file ConstExpr.h
16  *  \ingroup expressions
17  */
18
19 #ifndef __CONSTEXPR_H__
20 #define __CONSTEXPR_H__
21
22 #include "Expression.h"
23 #include "Value.h"      // Added by ClassView
24
25 class CConstExpr : public CExpression  
26 {
27         //PLUGIN_DECLARE_SERIAL_EXPRESSION (CConstExpr,CExpression)
28 public:
29         virtual bool MergeExpression(CExpression* otherexpr);
30         
31         void BroadcastOperators(VALUE_OPERATOR op);
32
33         virtual unsigned char GetExpressionID();
34         CExpression*    CheckLink(std::vector<CBrokenLinkInfo*>& brokenlinks);
35         //bool IsInside(float x,float y,float z,bool bBorderInclude=true);
36         bool NeedsRecalculated();
37         void ClearModified();
38         virtual double GetNumber();
39         virtual CValue* Calculate();
40         CConstExpr(CValue* constval);
41         CConstExpr();
42         virtual ~CConstExpr();
43                         
44
45 private:
46         CValue* m_value;
47
48
49 #ifdef WITH_CXX_GUARDEDALLOC
50         MEM_CXX_CLASS_ALLOC_FUNCS("GE:CConstExpr")
51 #endif
52 };
53
54 #endif  /* __CONSTEXPR_H__ */