Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/presentation2/src/orxonox/Test.h @ 6371

Last change on this file since 6371 was 6123, checked in by scheusso, 15 years ago

synchronisation of pointers to classes that inherit from Synchronisable are now possible
just use the normal registerVariable syntax

  • 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      void registerVariables();
52
53      static void call(unsigned int clientID);
54      void call2(unsigned int clientID, std::string s1, std::string s2, std::string s3, std::string s4);
55      virtual void tick(float dt);
56
57
58      //unsigned functions
59      void setU1(UTYPE value){ u1 = value; }
60      void setU2(UTYPE value){ u2 = value; }
61      void setU3(UTYPE value){ u3 = value; }
62      void setU4(UTYPE value){ u4 = value; }
63      void checkU1();
64      void checkU2();
65      void checkU3();
66      void checkU4();
67
68      //signed functions
69      void setS1(TYPE value){ s1 = value; }
70      void setS2(TYPE value){ s2 = value; }
71      void setS3(TYPE value){ s3 = value; }
72      void setS4(TYPE value){ s4 = value; }
73      void checkS1();
74      void checkS2();
75      void checkS3();
76      void checkS4();
77     
78      void printPointer();
79
80      static void printV1(){ instance_->checkU1(); }
81      static void printV2(){ instance_->checkU2(); }
82      static void printV3(){ instance_->checkU3(); }
83      static void printV4(){ instance_->checkU4(); }
84
85      void printBlaBla(std::string s1, std::string s2, std::string s3, std::string s4, std::string s5);
86
87    private:
88      UTYPE u1;
89      UTYPE u2;
90      UTYPE u3;
91      UTYPE u4;
92
93      TYPE s1;
94      TYPE s2;
95      TYPE s3;
96      TYPE s4;
97     
98      Test* pointer_;
99
100      static Test* instance_;
101  };
102}
103
104#endif /* _Test_H__ */
Note: See TracBrowser for help on using the repository browser.