00001 /* 00002 Object Oriented Mobile Robot Model (OOMRM) C++ Library Copyright (C) 2002-2005 Derek Jones 00003 00004 This library is free software; you can redistribute it and/or 00005 modify it under the terms of the GNU Lesser General Public 00006 License as published by the Free Software Foundation; either 00007 version 2.1 of the License, or (at your option) any later version. 00008 00009 This library is distributed in the hope that it will be useful, 00010 but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 Lesser General Public License for more details. 00013 00014 You should have received a copy of the GNU Lesser General Public 00015 License along with this library; if not, write to the Free Software 00016 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00017 00018 $Id: oencoder.h,v 1.1.1.1 2006/05/11 05:22:43 derek Exp $ 00019 Class: oEncoderQuadrature 00020 Purpose: Implements a quadrature encoder object using the FQD function of TPU 00021 Author : Derek Jones 00022 Please send bug reports/enhancements to d.b.jones@verizon.net. 00023 00024 Version: 1.1 00025 Modificatons: 00026 */ 00027 00028 #ifndef ENCODER_H 00029 #define ENCODER_H 00030 #include <hardware/base/bencoder.h> 00031 #ifdef DOS 00032 #ifdef __cplusplus 00033 using namespace std; 00035 00061 class oEncoder : public bEncoder 00062 { 00063 public: 00065 oEncoder(IOLINE prim,uint8 subclass=0); 00066 oEncoder(bool quad, IOLINE prim, IOLINE sec,uint8 subclass=0); 00067 IOLINE primary(void) { return _Pioline; } 00068 IOLINE secondary(void) { return _Sioline; } 00069 PRIORITY get_priority(void); 00070 unsigned short count(void) const; 00071 bool operating(void); 00072 int Label; 00073 unsigned short invariant_count(void) const; 00074 void WSwrite(void); 00075 oEncoder(); 00076 }; 00077 #endif 00078 #else 00079 typedef bEncoder oEncoder; 00080 #endif 00081 00082 //#include <hardware/oencoder.h> 00083 //typedef oEncoder oDI1_TPU; // the way it should have been! 00084 #endif
1.3