Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/new_class_id/src/lib/util/executor/executor_member.h @ 9745

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

Extension possible now

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.