00001 // 00002 // Copyright 2002,2004 Sony Corporation 00003 // 00004 // Permission to use, copy, modify, and redistribute this software for 00005 // non-commercial use is hereby granted. 00006 // 00007 // This software is provided "as is" without warranty of any kind, 00008 // either expressed or implied, including but not limited to the 00009 // implied warranties of fitness for a particular purpose. 00010 // 00011 00012 #ifndef MTNAgent7_h_DEFINED 00013 #define MTNAgent7_h_DEFINED 00014 00015 #include <OPENR/ODataArchive.h> 00016 #include <MoNetData.h> 00017 #include "MoNetAgent.h" 00018 #include "MTN.h" 00019 00020 class MTNAgent7 : public MoNetAgent { 00021 public: 00022 MTNAgent7(); 00023 virtual ~MTNAgent7() {} 00024 00025 virtual bool AreYou(MoNetAgentID agent); 00026 virtual void Init(ODA* oda); 00027 virtual void NotifyCommand(const MoNetAgentCommand& command, 00028 MoNetAgentResult* result); 00029 virtual void ReadyEffector(const MoNetAgentCommand& command, 00030 MoNetAgentResult* result); 00031 virtual void SetJointGain(); 00032 00033 private: 00034 static const word TILT1_PGAIN = 0x000a; 00035 static const word TILT1_IGAIN = 0x0004; 00036 static const word TILT1_DGAIN = 0x0002; 00037 00038 static const word PAN_PGAIN = 0x0008; 00039 static const word PAN_IGAIN = 0x0002; 00040 static const word PAN_DGAIN = 0x0004; 00041 00042 static const word TILT2_PGAIN = 0x0008; 00043 static const word TILT2_IGAIN = 0x0004; 00044 static const word TILT2_DGAIN = 0x0002; 00045 00046 static const word J1_PGAIN = 0x0010; 00047 static const word J1_IGAIN = 0x0004; 00048 static const word J1_DGAIN = 0x0001; 00049 00050 static const word J2_PGAIN = 0x000a; 00051 static const word J2_IGAIN = 0x0004; 00052 static const word J2_DGAIN = 0x0001; 00053 00054 static const word J3_PGAIN = 0x0010; 00055 static const word J3_IGAIN = 0x0004; 00056 static const word J3_DGAIN = 0x0001; 00057 00058 static const word TAIL_PGAIN = 0x000a; 00059 static const word TAIL_IGAIN = 0x0004; 00060 static const word TAIL_DGAIN = 0x0004; 00061 00062 static const word PSHIFT = 0x000e; 00063 static const word ISHIFT = 0x0002; 00064 static const word DSHIFT = 0x000f; 00065 00066 MoNetStatus SetPrimitiveID(OCommandVectorData* cmdVec, char* robotDesign); 00067 MoNetStatus Move(OVRSyncKey syncKey); 00068 00069 ODA* motionODA; 00070 MTN mtn; 00071 }; 00072 00073 #endif // MTNAgent7_h_DEFINED