Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/trunk/src/lib/util/executor/executor_member.h @ 9869

Last change on this file since 9869 was 9869, checked in by bensch, 18 years ago

orxonox/trunk: merged the new_class_id branche back to the trunk.
merged with command:
svn merge https://svn.orxonox.net/orxonox/branches/new_class_id trunk -r9683:HEAD
no conflicts… puh..

File size: 1.5 KB
Line 
1/*!
2 * @file executor_member.h
3 * Definition of an Executor to Member Functions
4 */
5/*
6   orxonox - the future of 3D-vertical-scrollers
7
8   Copyright (C) 2004 orx
9
10   This program is free software; you can redistribute it and/or modify
11   it under the terms of the GNU General Public License as published by
12   the Free Software Foundation; either version 2, or (at your option)
13   any later version.
14
15### File Specific:
16   main-programmer: Benjamin Grauer
17   co-programmer: ...
18*/
19
20
21#ifndef __EXECUTOR_MEMBER_H_
22#define __EXECUTOR_MEMBER_H_
23
24/// Define all Constructs, that define an Executor.
25//! The Name to be attached to the functional (for normal, static, and const modes)
26#define __EXECUTOR_FUNCTIONAL_NAME(ParamCount, Ext)   Executor##ParamCount##Ext
27//! if Functional is constant calling
28#define __EXECUTOR_FUNCTIONAL_CONST
29//! The Execution-mode (either static or objective)
30#define __EXECUTOR_FUNCTIONAL_FUNCTION_EXEC      dynamic_cast<T*>(object)->*(functionPointer)
31//! The Function-Pointer, and how to save it internally.
32#define __EXECUTOR_FUNCTIONAL_FUNCTION_POINTER   T::*functionPointer
33//! The Type of Function
34#define __EXECUTOR_FUNCTIONAL_FUNCTIONTYPE       Executor<CallType, BaseClass>::FunctionMember
35
36
37/// We want to include __EXECUTOR_GENERIC_H again, with current settings.
38#include "executor_generic.h"
39
40
41#undef __EXECUTOR_FUNCTIONAL_NAME
42#undef __EXECUTOR_FUNCTIONAL_CONST
43#undef __EXECUTOR_FUNCTIONAL_FUNCTION_EXEC
44#undef __EXECUTOR_FUNCTIONAL_FUNCTION_POINTER
45#undef __EXECUTOR_FUNCTIONAL_FUNCTIONTYPE
46
47#endif /* __EXECUTOR_MEMBER_H_ */
Note: See TracBrowser for help on using the repository browser.