Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/network2/src/orxonox/Test.h @ 6957

Last change on this file since 6957 was 6448, checked in by scheusso, 15 years ago

made registerVariables always private. otherwise bad things may happen with variables registered twice or even 3 times (as has happened in ControllableEntity until now)

  • Property svn:eol-style set to native
File size: 2.7 KB
Line 
1/*
2 *   ORXONOX - the hottest 3D action shooter ever to exist
3 *                    > www.orxonox.net <
4 *
5 *
6 *   License notice:
7 *
8 *   This program is free software; you can redistribute it and/or
9 *   modify it under the terms of the GNU General Public License
10 *   as published by the Free Software Foundation; either version 2
11 *   of the License, or (at your option) any later version.
12 *
13 *   This program is distributed in the hope that it will be useful,
14 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
15 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 *   GNU General Public License for more details.
17 *
18 *   You should have received a copy of the GNU General Public License
19 *   along with this program; if not, write to the Free Software
20 *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
21 *
22 *   Author:
23 *      Oli Scheuss
24 *   Co-authors:
25 *      ...
26 *
27 */
28
29#ifndef _Test_H__
30#define _Test_H__
31
32#include "OrxonoxPrereqs.h"
33#include "core/BaseObject.h"
34#include "network/synchronisable/Synchronisable.h"
35#include "tools/interfaces/Tickable.h"
36
37
38typedef int TYPE;
39typedef unsigned int UTYPE;
40
41
42namespace orxonox
43{
44  class _OrxonoxExport Test: public BaseObject, public Synchronisable, public Tickable
45  {
46    public:
47      Test(BaseObject* creator);
48      virtual ~Test();
49
50      void setConfigValues();
51
52      static void call(unsigned int clientID);
53      void call2(unsigned int clientID, std::string s1, std::string s2, std::string s3, std::string s4);
54      virtual void tick(float dt);
55
56
57      //unsigned functions
58      void setU1(UTYPE value){ u1 = value; }
59      void setU2(UTYPE value){ u2 = value; }
60      void setU3(UTYPE value){ u3 = value; }
61      void setU4(UTYPE value){ u4 = value; }
62      void checkU1();
63      void checkU2();
64      void checkU3();
65      void checkU4();
66
67      //signed functions
68      void setS1(TYPE value){ s1 = value; }
69      void setS2(TYPE value){ s2 = value; }
70      void setS3(TYPE value){ s3 = value; }
71      void setS4(TYPE value){ s4 = value; }
72      void checkS1();
73      void checkS2();
74      void checkS3();
75      void checkS4();
76
77      void printPointer();
78
79      static void printV1(){ instance_->checkU1(); }
80      static void printV2(){ instance_->checkU2(); }
81      static void printV3(){ instance_->checkU3(); }
82      static void printV4(){ instance_->checkU4(); }
83
84      void printBlaBla(std::string s1, std::string s2, std::string s3, std::string s4, std::string s5);
85
86    private:
87      void registerVariables();
88
89      UTYPE u1;
90      UTYPE u2;
91      UTYPE u3;
92      UTYPE u4;
93
94      TYPE s1;
95      TYPE s2;
96      TYPE s3;
97      TYPE s4;
98
99      Test* pointer_;
100
101      static Test* instance_;
102  };
103}
104
105#endif /* _Test_H__ */
Note: See TracBrowser for help on using the repository browser.