Changeset 20309
- Timestamp:
- 06/15/07 16:13:43 (1 year ago)
- Files:
-
- juggler/branches/2.2/modules/gadgeteer/ChangeLog (modified) (1 diff)
- juggler/branches/2.2/modules/gadgeteer/VERSION (modified) (1 diff)
- juggler/branches/2.2/modules/gadgeteer/drivers/3Dconnexion/SpaceBall/puck_device.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/5DT/DataGlove/DataGlove.cpp (modified) (1 diff)
- juggler/branches/2.2/modules/gadgeteer/drivers/5DT/DataGlove/DataGlove.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/ART/DTrack/DTrack.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Ascension/Flock/Flock.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Ascension/MotionStar/MotionStar.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Ascension/Wanda/Wanda.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Elexol/Ether24/Ether24.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Fakespace/PinchGlove/PinchGlove.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Immersion/IBox/IBox.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Intersense/IS900/Intersense.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Intersense/IntersenseAPI/IntersenseAPI.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Logitech/ThreeDMouse/logiclass.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Microsoft/DirectXJoystick/DirectXJoystick.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Microsoft/SpeechRecognition/MSFTSpeechRecogDigital.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Microsoft/SpeechRecognition/MSFTSpeechRecogString.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Open/DTK/DTK.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Open/LinuxJoydev/LinuxJoydev.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Open/Trackd/TrackdController.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Open/Trackd/TrackdSensor.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Open/VRPN/Vrpn.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/Polhemus/Fastrak/Fastrak.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/USDigital/SerialEncoder/SerialEncoder.h (modified) (3 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/VRCO/TrackdAPI/TrackdAPIController.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/VRCO/TrackdAPI/TrackdAPISensor.h (modified) (2 diffs)
- juggler/branches/2.2/modules/gadgeteer/drivers/configure.ac (modified) (1 diff)
- juggler/branches/2.2/modules/gadgeteer/gadget/Type/BaseTypeFactory.cpp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
juggler/branches/2.2/modules/gadgeteer/ChangeLog
r20085 r20309 1 1 DATE AUTHOR CHANGE 2 2 ----------- ----------- ------------------------------------------------------- 3 Jun-15-2007 aronb Introduced typedefs for known gadget::InputMixer<> 4 instantiations to be used as the base class for device 5 drivers. 6 NEW VERSION: 1.1.28 7 Jun-15-2007 aronb Fixed the VRPN driver so that it works correctly in a 8 cluster configuration again. 3 9 May-01-2007 patrick Renamed the x11_pipes property of the display_system 4 10 config element to pipes. juggler/branches/2.2/modules/gadgeteer/VERSION
r20085 r20309 1 1.1.28-0 @06/15/2007 21:15:00 UTC@ 1 2 1.1.27-0 @05/02/2007 02:00:00 UTC@ 2 3 1.1.26-0 @04/28/2007 14:15:00 UTC@ juggler/branches/2.2/modules/gadgeteer/drivers/3Dconnexion/SpaceBall/puck_device.h
r19053 r20309 36 36 37 37 #include <gadget/gadgetParam.h> 38 #include <gadget/Type/InputBaseTypes.h> 39 #include <gadget/Type/Input.h> 40 #include <gadget/Type/Digital.h> 38 41 #include <gadget/Type/Analog.h> 39 #include <gadget/Type/Digital.h>40 42 #include <gadget/InputManager.h> 41 #include <gadget/Type/Input.h>42 #include <gadget/Type/InputMixer.h>43 43 44 44 /* … … 804 804 /** A driver for puck-like devices 805 805 */ 806 class PuckDevice : public gadget::InputMixer<gadget::InputMixer 807 <gadget::Input,gadget::Digital>,gadget::Analog> 806 class PuckDevice : public gadget::input_digital_analog_t 808 807 { 809 808 public: juggler/branches/2.2/modules/gadgeteer/drivers/5DT/DataGlove/DataGlove.cpp
r19729 r20309 34 34 #include <gadget/Type/DeviceConstructor.h> 35 35 #include <gadget/gadgetParam.h> 36 #include <gadget/Util/Debug.h> 36 37 #include <drivers/5DT/DataGlove/DataGloveStandalone.h> /* standalone dataglove driver */ 37 38 #include <drivers/5DT/DataGlove/DataGlove.h> /* Gadgeteer dataglove driver */ juggler/branches/2.2/modules/gadgeteer/drivers/5DT/DataGlove/DataGlove.h
r19729 r20309 32 32 #include <vector> 33 33 34 #include <gadget/Type/InputBaseTypes.h> 34 35 #include <gadget/Type/Input.h> 35 #include <gadget/Type/Glove.h>36 36 #include <gadget/Type/Analog.h> 37 #include <gadget/Type/Digital.h>38 #include <gadget/Type/InputMixer.h>39 37 #include <drivers/5DT/DataGlove/DataGloveStandalone.h> 40 38 … … 55 53 56 54 //class DataGlove : virtual public Input, public Glove, public Analog 57 class DataGlove : public InputMixer<Input,Analog>55 class DataGlove : public input_analog_t 58 56 { 59 57 public: juggler/branches/2.2/modules/gadgeteer/drivers/ART/DTrack/DTrack.h
r18827 r20309 31 31 32 32 #include <gadget/Devices/DriverConfig.h> 33 #include <gadget/Type/InputBaseTypes.h> 33 34 #include <gadget/Type/Input.h> 34 #include <gadget/Type/Position.h>35 35 #include <gadget/Type/Digital.h> 36 36 #include <gadget/Type/Analog.h> 37 #include <gadget/Type/ InputMixer.h>37 #include <gadget/Type/Position.h> 38 38 39 39 #include "DTrackStandalone.h" … … 43 43 { 44 44 45 class DTrack : public InputMixer<InputMixer<InputMixer<Input, Digital>, Analog>, Position> 45 class DTrack 46 : public input_digital_analog_position_t 46 47 { 47 48 public: juggler/branches/2.2/modules/gadgeteer/drivers/Ascension/Flock/Flock.h
r19729 r20309 30 30 #include <gadget/Devices/DriverConfig.h> 31 31 #include <vpr/Thread/Thread.h> 32 #include <gadget/Type/InputBaseTypes.h> 32 33 #include <gadget/Type/Input.h> 33 34 #include <gadget/Type/Position.h> 34 #include <gadget/Type/InputMixer.h>35 35 #include <drivers/Ascension/Flock/FlockStandalone.h> 36 36 … … 61 61 */ 62 62 //class Flock : public Input, public Position 63 class Flock : public InputMixer<Input,Position> 63 class Flock 64 : public input_position_t 64 65 { 65 66 public: juggler/branches/2.2/modules/gadgeteer/drivers/Ascension/MotionStar/MotionStar.h
r19729 r20309 33 33 #include <vpr/Thread/Thread.h> 34 34 35 #include <gadget/Type/InputBaseTypes.h> 35 36 #include <gadget/Type/Input.h> 36 37 #include <gadget/Type/Position.h> 37 #include <gadget/Type/InputMixer.h>38 38 #include <drivers/Ascension/MotionStar/MotionStarStandalone.h> 39 39 … … 66 66 * @see Position 67 67 */ 68 class MotionStar : public InputMixer<Input,Position> 68 class MotionStar 69 : public input_position_t 69 70 { 70 71 public: juggler/branches/2.2/modules/gadgeteer/drivers/Ascension/Wanda/Wanda.h
r19729 r20309 33 33 #include <vpr/vprDomain.h> 34 34 35 #include <gadget/Type/InputBaseTypes.h> 35 36 #include <gadget/Type/Input.h> 37 #include <gadget/Type/Digital.h> 36 38 #include <gadget/Type/Analog.h> 37 #include <gadget/Type/Digital.h>38 #include <gadget/Type/InputMixer.h>39 39 #include <drivers/Ascension/Wanda/WandaStandalone.h> 40 40 … … 46 46 * Gadgeteer wrapper around wanda::WandaStandalone driver. 47 47 */ 48 class Wanda : public InputMixer<Input, InputMixer<Digital, Analog> > 48 class Wanda 49 : public input_digital_analog_t 49 50 { 50 51 public: juggler/branches/2.2/modules/gadgeteer/drivers/Elexol/Ether24/Ether24.h
r19729 r20309 31 31 #include <vector> 32 32 #include <vpr/Thread/Thread.h> 33 #include <gadget/Type/InputBaseTypes.h> 33 34 #include <gadget/Type/Input.h> 34 35 #include <gadget/Type/Digital.h> 35 #include <gadget/Type/InputMixer.h>36 36 #include <drivers/Elexol/Ether24/Ether24Standalone.h> 37 37 … … 44 44 */ 45 45 class Ether24 46 : public InputMixer<Input, Digital>46 : public input_digital_t 47 47 { 48 48 public: juggler/branches/2.2/modules/gadgeteer/drivers/Fakespace/PinchGlove/PinchGlove.h
r19729 r20309 35 35 #include <drivers/Fakespace/PinchGlove/PinchGloveStandalone.h> 36 36 37 #include <gadget/Type/InputBaseTypes.h> 38 #include <gadget/Type/Input.h> 39 #include <gadget/Type/Glove.h> 37 40 #include <gadget/Type/Digital.h> 38 #include <gadget/Type/Input.h>39 #include <gadget/Type/InputMixer.h>40 #include <gadget/Type/Glove.h>41 41 42 42 namespace gadget … … 46 46 * Fakespace PinchGlove device. 47 47 */ 48 class PinchGlove : public InputMixer<InputMixer<Input, Glove>, Digital> 48 class PinchGlove 49 : public input_glove_digital_t 49 50 { 50 51 public: juggler/branches/2.2/modules/gadgeteer/drivers/Immersion/IBox/IBox.h
r19729 r20309 30 30 #include <gadget/Devices/DriverConfig.h> 31 31 #include <vector> 32 #include <gadget/Type/InputBaseTypes.h> 32 33 #include <gadget/Type/Input.h> 33 34 #include <gadget/Type/Digital.h> 34 35 #include <gadget/Type/Analog.h> 35 #include <gadget/Type/InputMixer.h>36 36 #include <drivers/Immersion/IBox/IBoxStandalone.h> 37 37 … … 45 45 * therefore must inherit from both Digital and Analog. 46 46 */ 47 class IBox : public InputMixer<InputMixer<Input,Digital>,Analog> 47 class IBox 48 : public input_digital_analog_t 48 49 { 49 50 public: juggler/branches/2.2/modules/gadgeteer/drivers/Intersense/IS900/Intersense.h
r19729 r20309 35 35 #include <vector> 36 36 #include <vpr/Thread/Thread.h> 37 #include <gadget/Type/InputBaseTypes.h> 37 38 #include <gadget/Type/Input.h> 38 #include <gadget/Type/Position.h>39 39 #include <gadget/Type/Digital.h> 40 40 #include <gadget/Type/Analog.h> 41 #include <gadget/Type/ InputMixer.h>41 #include <gadget/Type/Position.h> 42 42 #include <drivers/Intersense/IS900/IntersenseStandalone.h> 43 43 … … 104 104 */ 105 105 //class Intersense : public Input, public Position, public Digital, public Analog 106 class Intersense :107 public InputMixer<InputMixer<InputMixer<Input, Digital>, Analog>, Position>106 class Intersense 107 : public input_digital_analog_position_t 108 108 { 109 109 protected: juggler/branches/2.2/modules/gadgeteer/drivers/Intersense/IntersenseAPI/IntersenseAPI.h
r19729 r20309 31 31 #include <vector> 32 32 #include <vpr/Thread/Thread.h> 33 #include <gadget/Type/InputBaseTypes.h> 33 34 #include <gadget/Type/Input.h> 34 #include <gadget/Type/Position.h>35 35 #include <gadget/Type/Digital.h> 36 36 #include <gadget/Type/Analog.h> 37 #include <gadget/Type/ InputMixer.h>37 #include <gadget/Type/Position.h> 38 38 #include <drivers/Intersense/IntersenseAPI/IntersenseAPIStandalone.h> 39 39 … … 69 69 */ 70 70 class IntersenseAPI 71 : public InputMixer<InputMixer<InputMixer<Input, Digital>, Analog>, Position>71 : public input_digital_analog_position_t 72 72 { 73 73 public: juggler/branches/2.2/modules/gadgeteer/drivers/Logitech/ThreeDMouse/logiclass.h
r19729 r20309 46 46 47 47 #include <gadget/Devices/DriverConfig.h> 48 #include <gadget/Type/InputBaseTypes.h> 48 49 #include <gadget/Type/Input.h> 49 50 #include <gadget/Type/Position.h> 50 #include <gadget/Type/InputMixer.h>51 51 #include <gmtl/Vec.h> 52 52 #include <vector> … … 85 85 */ 86 86 //class ThreeDMouse : public gadget::Input, public gadget::Position 87 class ThreeDMouse : public InputMixer<Input,Position> 87 class ThreeDMouse 88 : public input_position_t 88 89 { 89 90 public: juggler/branches/2.2/modules/gadgeteer/drivers/Microsoft/DirectXJoystick/DirectXJoystick.h
r19729 r20309 33 33 #include <utility> 34 34 35 #include <gadget/Type/InputBaseTypes.h> 35 36 #include <gadget/Type/Input.h> 36 37 #include <gadget/Type/Digital.h> 37 38 #include <gadget/Type/Analog.h> 38 #include <gadget/Type/InputMixer.h>39 39 #include <drivers/Microsoft/DirectXJoystick/DirectXJoystickStandalone.h> 40 40 … … 48 48 * @see Digital, Analog 49 49 */ 50 class DirectXJoystick : public InputMixer<InputMixer<Input, Digital>, Analog> 50 class DirectXJoystick 51 : public input_digital_analog_t 51 52 { 52 53 public: juggler/branches/2.2/modules/gadgeteer/drivers/Microsoft/SpeechRecognition/MSFTSpeechRecogDigital.h
r19729 r20309 38 38 39 39 #include <vpr/Thread/Thread.h> 40 #include <gadget/Type/InputBaseTypes.h> 40 41 #include <gadget/Type/Input.h> 41 42 #include <gadget/Type/Command.h> 42 #include <gadget/Type/InputMixer.h>43 43 44 44 #include <drivers/Microsoft/SpeechRecognition/MSFTSpeechServerManager.h> … … 53 53 54 54 class MSFTSpeechRecogDigital 55 : public gadget::InputMixer<gadget::Input, gadget::Command>55 : public input_command_t 56 56 { 57 57 public: juggler/branches/2.2/modules/gadgeteer/drivers/Microsoft/SpeechRecognition/MSFTSpeechRecogString.h
r19729 r20309 37 37 38 38 #include <vpr/Thread/Thread.h> 39 #include <gadget/Type/InputBaseTypes.h> 39 40 #include <gadget/Type/Input.h> 40 41 #include <gadget/Type/String.h> 41 #include <gadget/Type/InputMixer.h>42 42 43 43 #include <drivers/Microsoft/SpeechRecognition/MSFTSpeechServerManager.h> … … 52 52 53 53 class MSFTSpeechRecogString 54 : public gadget::InputMixer<gadget::Input, gadget::String>54 : public input_string_t 55 55 { 56 56 public: juggler/branches/2.2/modules/gadgeteer/drivers/Open/DTK/DTK.h
r19729 r20309 29 29 30 30 #include <gadget/Devices/DriverConfig.h> 31 #include <gadget/Type/InputBaseTypes.h> 32 #include <gadget/Type/Input.h> 31 33 #include <gadget/Type/Digital.h> 32 34 #include <gadget/Type/Analog.h> 33 35 #include <gadget/Type/Position.h> 34 #include <gadget/Type/InputMixer.h>35 36 #include <drivers/Open/DTK/DTKMemorySegment.h> 36 37 … … 46 47 //class GADGET_CLASS_API DTK : public Input, public Position, public Digital, 47 48 // public Analog 48 class GADGET_CLASS_API DTK : public InputMixer<InputMixer<InputMixer<Input,Digital>,Analog>,Position> 49 class DTK 50 : public input_digital_analog_position_t 49 51 { 50 52 public: juggler/branches/2.2/modules/gadgeteer/drivers/Open/LinuxJoydev/LinuxJoydev.h
r19729 r20309 31 31 #include <vector> 32 32 #include <utility> 33 #include <gadget/Type/InputBaseTypes.h> 33 34 #include <gadget/Type/Input.h> 34 35 #include <gadget/Type/Digital.h> 35 36 #include <gadget/Type/Analog.h> 36 #include <gadget/Type/InputMixer.h>37 38 37 39 38 namespace gadget … … 45 44 * @see gadget:;Digital, gadget:;Analog 46 45 */ 47 class LinuxJoydev : public InputMixer<InputMixer<Input,Digital>,Analog> 46 class LinuxJoydev 47 : public input_digital_analog_t 48 48 { 49 49 public: juggler/branches/2.2/modules/gadgeteer/drivers/Open/Trackd/TrackdController.h
r19729 r20309 30 30 #include <gadget/Devices/DriverConfig.h> 31 31 #include <vector> 32 #include <gadget/Type/InputBaseTypes.h> 32 33 #include <gadget/Type/Input.h> 33 34 #include <gadget/Type/Digital.h> 34 35 #include <gadget/Type/Analog.h> 35 #include <gadget/Type/InputMixer.h>36 36 #include <drivers/Open/Trackd/TrackdControllerStandalone.h> 37 37 … … 52 52 */ 53 53 //class TrackdController : public Input, public Digital, public Analog 54 class TrackdController : public InputMixer<InputMixer<Input,Digital>,Analog> 54 class TrackdController 55 : public input_digital_analog_t 55 56 { 56 57 public: juggler/branches/2.2/modules/gadgeteer/drivers/Open/Trackd/TrackdSensor.h
r19729 r20309 30 30 #include <gadget/Devices/DriverConfig.h> 31 31 #include <vector> 32 #include <gadget/Type/InputBaseTypes.h> 32 33 #include <gadget/Type/Input.h> 33 34 #include <gadget/Type/Position.h> 34 #include <gadget/Type/InputMixer.h>35 35 #include <drivers/Open/Trackd/TrackdSensorStandalone.h> 36 36 … … 51 51 */ 52 52 //class TrackdSensor : public Input, public Position 53 class TrackdSensor : public InputMixer<Input,Position> 53 class TrackdSensor 54 : public input_position_t 54 55 { 55 56 public: juggler/branches/2.2/modules/gadgeteer/drivers/Open/VRPN/Vrpn.h
r19729 r20309 47 47 48 48 #include <vpr/Sync/Mutex.h> 49 #include <gadget/Type/InputBaseTypes.h> 49 50 #include <gadget/Type/Input.h> 50 #include <gadget/Type/Position.h>51 51 #include <gadget/Type/Digital.h> 52 52 #include <gadget/Type/Analog.h> 53 #include <gadget/Type/ InputMixer.h>53 #include <gadget/Type/Position.h> 54 54 55 55 #include <gmtl/Matrix.h> … … 82 82 */ 83 83 class Vrpn 84 : public InputMixer<InputMixer<InputMixer<Input, Analog>, Digital>, 85 Position> 84 : public input_digital_analog_position_t 86 85 { 87 86 public: juggler/branches/2.2/modules/gadgeteer/drivers/Polhemus/Fastrak/Fastrak.h
r19736 r20309 38 38 #include <jccl/Config/ConfigElementPtr.h> 39 39 40 #include <gadget/Type/InputBaseTypes.h> 40 41 #include <gadget/Type/Input.h> 41 42 #include <gadget/Type/Position.h> 42 #include <gadget/Type/InputMixer.h>43 43 44 44 #include <drivers/Polhemus/Fastrak/FastrakStandalone.h> … … 48 48 { 49 49 50 class Fastrak : public InputMixer<Input,Position> 50 class Fastrak 51 : public input_position_t 51 52 { 52 53 public: juggler/branches/2.2/modules/gadgeteer/drivers/USDigital/SerialEncoder/SerialEncoder.h
r19729 r20309 32 32 #include <vpr/Sync/Guard.h> 33 33 34 #include <gadget/Type/InputBaseTypes.h> 34 35 #include <gadget/Type/Input.h> 35 36 #include <gadget/Type/Position.h> … … 38 39 39 40 #include <gadget/Type/PositionInterface.h> 40 #include <gadget/Type/InputMixer.h>41 41 42 42 #include "SerialEncoderStandalone.h" … … 44 44 45 45 46 class SerialEncoder:public gadget::InputMixer<gadget::Input,gadget::Position> 46 class SerialEncoder 47 : public gadget::input_position_t 47 48 { 48 49 public: juggler/branches/2.2/modules/gadgeteer/drivers/VRCO/TrackdAPI/TrackdAPIController.h
r19729 r20309 30 30 #include <gadget/Devices/DriverConfig.h> 31 31 #include <vector> 32 #include <gadget/Type/InputBaseTypes.h> 32 33 #include <gadget/Type/Input.h> 33 34 #include <gadget/Type/Digital.h> 34 35 #include <gadget/Type/Analog.h> 35 #include <gadget/Devices/Sim/SimInput.h>36 #include <gadget/Type/InputMixer.h>37 36 38 37 #define TRACKD_DLL_EXPORTS 0 … … 55 54 * @see gadget::Analog 56 55 */ 57 class TrackdAPIController : public InputMixer<InputMixer<Input,Digital>,Analog> 56 class TrackdAPIController 57 : public input_digital_analog_t 58 58 { 59 59 public: juggler/branches/2.2/modules/gadgeteer/drivers/VRCO/TrackdAPI/TrackdAPISensor.h
r19729 r20309 30 30 #include <gadget/Devices/DriverConfig.h> 31 31 #include <vector> 32 #include <gadget/Type/InputBaseTypes.h> 32 33 #include <gadget/Type/Input.h> 33 34 #include <gadget/Type/Position.h> 34 #include <gadget/Type/InputMixer.h>35 35 36 36 #define TRACKD_DLL_EXPORTS 0 … … 52 52 * @see gadget::Position 53 53 */ 54 class TrackdAPISensor : public InputMixer<Input,Position> 54 class TrackdAPISensor 55 : public input_position_t 55 56 { 56 57 public: juggler/branches/2.2/modules/gadgeteer/drivers/configure.ac
r20301 r20309 173 173 174 174 VPR_PATH([1.1.42], , [AC_MSG_ERROR([*** VPR required for Device Drivers ***])]) 175 GADGETEER_PATH([1.1. 16], ,175 GADGETEER_PATH([1.1.28], , 176 176 [AC_MSG_ERROR(*** Gadgeteer required for Device Drivers ***)]) 177 177 JCCL_PATH_CXX([1.1.5], , juggler/branches/2.2/modules/gadgeteer/gadget/Type/BaseTypeFactory.cpp
r20244 r20309 41 41 #include <gadget/Type/String.h> 42 42 #include <gadget/Type/InputMixer.h> 43 //#include <gadget/Type/BaseTypes.h>44 43 #include <gadget/Util/Debug.h> 44 #include <gadget/Type/InputBaseTypes.h> 45 45 46 47 #define REGISTER_CONSTRUCTOR_TYPE(INPUT_TYPE) \ 48 BaseTypeConstructor< INPUT_TYPE::MixedPlaceholderType >* con_ ## INPUT_TYPE \ 49 = new BaseTypeConstructor< INPUT_TYPE::MixedPlaceholderType >; \ 50 if (NULL == con_ ## INPUT_TYPE) \ 51 { \ 52 vprDEBUG(vprDBG_ALL,vprDBG_CRITICAL_LVL) \ 53 << clrOutBOLD(clrRED,"ERROR:") << " Failed to load a known type " \ 54 << #INPUT_TYPE << std::endl << vprDEBUG_FLUSH; \ 55 } 46 56 47 57 namespace gadget … … 77 87 // Platform-independent devices. 78 88 79 // Input Digital 80 BaseTypeConstructor< InputMixer<Input,Digital>::MixedPlaceholderType >* input_digital 81 = new BaseTypeConstructor< InputMixer<Input,Digital>::MixedPlaceholderType >; 82 83 // Input Analog 84 BaseTypeConstructor< InputMixer<Input,Analog>::MixedPlaceholderType >* input_analog 85 = new BaseTypeConstructor< InputMixer<Input,Analog>::MixedPlaceholderType >; 86 87 // Input Position 88 BaseTypeConstructor< InputMixer<Input,Position>::MixedPlaceholderType >* input_position 89 = new BaseTypeConstructor< InputMixer<Input,Position>::MixedPlaceholderType >; 90 91 // Input Digital Analog 92 // Input Analog Digital 93 BaseTypeConstructor< InputMixer< InputMixer<Input,Digital> , Analog>::MixedPlaceholderType >* input_digital_analog 94 = new BaseTypeConstructor< InputMixer< InputMixer<Input,Digital> , Analog>::MixedPlaceholderType >; 95 96 // Input Digital Position 97 // Input Position Digital 98 BaseTypeConstructor< InputMixer< InputMixer<Input,Digital> , Position>::MixedPlaceholderType >* input_digital_position 99 = new BaseTypeConstructor< InputMixer< InputMixer<Input,Digital> , Position>::MixedPlaceholderType >; 100 101 // Input Analog Position 102 // Input Position Analog 103 BaseTypeConstructor< InputMixer< InputMixer<Input,Analog> , Position>::MixedPlaceholderType >* input_analog_position 104 = new BaseTypeConstructor< InputMixer< InputMixer<Input,Analog> , Position>::MixedPlaceholderType >; 105 106 // Input Digital Analog Position 107 BaseTypeConstructor< InputMixer< InputMixer< InputMixer<Input,Digital> , Analog> , Position>::MixedPlaceholderType >* input_digital_analog_position 108 = new BaseTypeConstructor< InputMixer< InputMixer< InputMixer<Input,Digital> , Analog> , Position>::MixedPlaceholderType >; 109 110 // SimInput Input Position 111 BaseTypeConstructor< InputMixer< InputMixer<SimInput,Input> , Position>::MixedPlaceholderType >* siminput_input_position 112 = new BaseTypeConstructor< InputMixer< InputMixer<SimInput,Input> , Position>::MixedPlaceholderType >; 113 114 // SimInput Input Digital 115 BaseTypeConstructor< InputMixer< InputMixer<SimInput,Input> , Digital>::MixedPlaceholderType >* siminput_input_digital 116 = new BaseTypeConstructor< InputMixer< InputMixer<SimInput,Input> , Digital>::MixedPlaceholderType >; 117 118 // SimInput Input Analog 119 BaseTypeConstructor< InputMixer< InputMixer<SimInput,Input> , Analog>::MixedPlaceholderType >* siminput_input_analog 120 = new BaseTypeConstructor< InputMixer< InputMixer<SimInput,Input> , Analog>::MixedPlaceholderType >; 121 122 // Input KeyboardMouse 123 BaseTypeConstructor< InputMixer<Input,KeyboardMouse>::MixedPlaceholderType >* input_keyboard 124 = new BaseTypeConstructor< InputMixer<Input,KeyboardMouse>::MixedPlaceholderType >; 125 126 // Input String 127 BaseTypeConstructor< InputMixer<Input, String>::MixedPlaceholderType >* input_string 128 = new BaseTypeConstructor< InputMixer<Input, String>::MixedPlaceholderType >; 129 130 // Input Command 131 BaseTypeConstructor< InputMixer<Input, Command>::MixedPlaceholderType >* input_command 132 = new BaseTypeConstructor< InputMixer<Input, Command>::MixedPlaceholderType >; 133 134 // Input Glove 135 BaseTypeConstructor< InputMixer<Input,Glove>::MixedPlaceholderType >* input_glove 136 = new BaseTypeConstructor< InputMixer<Input,Glove>::MixedPlaceholderType >; 137 138 // Input Glove Digital 139 BaseTypeConstructor< InputMixer< InputMixer<Input, Glove> , Digital>::MixedPlaceholderType >* input_glove_digital 140 = new BaseTypeConstructor< InputMixer< InputMixer<Input, Glove> , Digital>::MixedPlaceholderType >; 141 142 if( (NULL == input_digital) || 143 (NULL == input_analog) || 144 (NULL == input_position) || 145 (NULL == input_digital_analog) || 146 (NULL == input_digital_position) || 147 (NULL == input_analog_position) || 148 (NULL == input_digital_analog_position) || 149 (NULL == siminput_input_position) || 150 (NULL == siminput_input_digital) || 151 (NULL == siminput_input_analog) || 152 (NULL == input_keyboard) || 153 (NULL == input_string) || 154 (NULL == input_command) || 155 (NULL == input_glove) || 156 (NULL == input_glove_digital) ) 157 { 158 vprDEBUG(vprDBG_ALL,vprDBG_CRITICAL_LVL) 159 << clrOutBOLD(clrRED,"ERROR:") << " Failed to load a known device\n" 160 << vprDEBUG_FLUSH; 161 } 89 REGISTER_CONSTRUCTOR_TYPE(input_digital_t); 90 REGISTER_CONSTRUCTOR_TYPE(input_analog_t); 91 REGISTER_CONSTRUCTOR_TYPE(input_position_t); 92 REGISTER_CONSTRUCTOR_TYPE(input_keyboard_t); 93 REGISTER_CONSTRUCTOR_TYPE(input_string_t); 94 REGISTER_CONSTRUCTOR_TYPE(input_command_t); 95 REGISTER_CONSTRUCTOR_TYPE(input_glove_t); 96 REGISTER_CONSTRUCTOR_TYPE(input_digital_analog_t); 97 REGISTER_CONSTRUCTOR_TYPE(input_digital_position_t); 98 REGISTER_CONSTRUCTOR_TYPE(input_analog_position_t); 99 REGISTER_CONSTRUCTOR_TYPE(input_glove_digital_t); 100 REGISTER_CONSTRUCTOR_TYPE(siminput_input_position); 101 REGISTER_CONSTRUCTOR_TYPE(siminput_input_digital); 102 REGISTER_CONSTRUCTOR_TYPE(siminput_input_analog); 103 REGISTER_CONSTRUCTOR_TYPE(input_digital_analog_position_t); 162 104 } 163 105
