MOOS 0.2375
/home/toby/moos-ivp/MOOS-2375-Oct0611/Instruments/Ocean/iActuation/MOOSSAILDriver.h
Go to the documentation of this file.
00001 
00002 //
00003 //   MOOS - Mission Oriented Operating Suite
00004 //
00005 //   A suit of Applications and Libraries for Mobile Robotics Research
00006 //   Copyright (C) 2001-2005 Massachusetts Institute of Technology and
00007 //   Oxford University.
00008 //
00009 //   This software was written by Paul Newman and others
00010 //   at MIT 2001-2002 and Oxford University 2003-2005.
00011 //   email: pnewman@robots.ox.ac.uk.
00012 //
00013 //   This file is part of a  MOOS Instrument.
00014 //
00015 //   This program is free software; you can redistribute it and/or
00016 //   modify it under the terms of the GNU General Public License as
00017 //   published by the Free Software Foundation; either version 2 of the
00018 //   License, or (at your option) any later version.
00019 //
00020 //   This program is distributed in the hope that it will be useful,
00021 //   but WITHOUT ANY WARRANTY; without even the implied warranty of
00022 //   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00023 //   General Public License for more details.
00024 //
00025 //   You should have received a copy of the GNU General Public License
00026 //   along with this program; if not, write to the Free Software
00027 //   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
00028 //   02111-1307, USA.
00029 //
00031 // MOOSSAILDriver.h: interface for the CMOOSSAILDriver class.
00032 //
00034 
00035 #if !defined(AFX_MOOSSAILDRIVER_H__28D26D20_FC55_44BD_9FC9_3112A4E76704__INCLUDED_)
00036 #define AFX_MOOSSAILDRIVER_H__28D26D20_FC55_44BD_9FC9_3112A4E76704__INCLUDED_
00037 
00038 #if _MSC_VER > 1000
00039 #pragma once
00040 #endif // _MSC_VER > 1000
00041 
00042 #include "MOOSActuationDriver.h"
00043 
00044 class CMOOSSAILDriver  : public CMOOSActuationDriver
00045 {
00046     class CSailCommand
00047     {
00048     public:
00049         CSailCommand(string sCmd,bool bWait)
00050         {
00051             m_sCmd=sCmd;
00052             m_bWaitForReply = bWait;
00053         };
00054         string m_sCmd;
00055         bool m_bWaitForReply;
00056     };
00057 
00058 
00059 public:
00060 
00061     CMOOSSAILDriver();
00062     virtual ~CMOOSSAILDriver();
00063 
00064     virtual bool Initialise();
00065     virtual bool SetThrust(double dfPercent);
00066     virtual bool SetRudder(double dfAng);
00067     virtual bool SetElevator(double dfAng);
00068     virtual bool SetZeroRudder();
00069     virtual bool SetZeroElevator();
00070 
00071 
00072 
00073 protected:
00074     bool DoFinControl(const char * sAddress, double dfAng);
00075 };
00076 
00077 #endif // !defined(AFX_MOOSSAILDRIVER_H__28D26D20_FC55_44BD_9FC9_3112A4E76704__INCLUDED_)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines