Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/presentation3/src/orxonox/Test.h @ 7105

Last change on this file since 7105 was 7105, checked in by scheusso, 14 years ago

std::set<T> is now synchronisable
this was neccessary to synchronise templates (now used in the Level class)
this was neccessary to synchronise lod templates and configuration

  • Property svn:eol-style set to native
File size: 2.9 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#include <set>
38
39typedef int TYPE;
40typedef unsigned int UTYPE;
41
42
43namespace orxonox
44{
45  class _OrxonoxExport Test: public BaseObject, public Synchronisable, public Tickable
46  {
47    public:
48      Test(BaseObject* creator);
49      virtual ~Test();
50
51      void setConfigValues();
52      void registerVariables();
53
54      static void call(unsigned int clientID);
55      void call2(unsigned int clientID, std::string s1, std::string s2, std::string s3, std::string s4);
56      virtual void tick(float dt);
57
58
59      //unsigned functions
60      void setU1(UTYPE value){ u1 = value; }
61      void setU2(UTYPE value){ u2 = value; }
62      void setU3(UTYPE value){ u3 = value; }
63      void setU4(UTYPE value){ u4 = value; }
64      void checkU1();
65      void checkU2();
66      void checkU3();
67      void checkU4();
68
69      //signed functions
70      void setS1(TYPE value){ s1 = value; }
71      void setS2(TYPE value){ s2 = value; }
72      void setS3(TYPE value){ s3 = value; }
73      void setS4(TYPE value){ s4 = value; }
74      void checkS1();
75      void checkS2();
76      void checkS3();
77      void checkS4();
78
79      void printPointer();
80
81      static void printV1(){ instance_->blub(); }
82      static void printV2(){ instance_->blub2(); }
83      static void printV3(){ instance_->checkU3(); }
84      static void printV4(){ instance_->checkU4(); }
85
86      void printBlaBla(std::string s1, std::string s2, std::string s3, std::string s4, std::string s5);
87
88    private:
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      std::set<uint32_t> mySet_;
102
103      static Test* instance_;
104     
105      void blub()
106      { mySet_.insert(2); }
107     
108      void blub2()
109      { for( std::set<uint32_t>::iterator it=mySet_.begin(); it!=mySet_.end(); ++it ) COUT(0) << *it << endl; }
110  };
111}
112
113#endif /* _Test_H__ */
Note: See TracBrowser for help on using the repository browser.