00001 #pragma ident "$Id: AshtechPBEN.hpp 816 2007-10-09 14:02:42Z ocibu $" 00002 00003 //============================================================================ 00004 // 00005 // This file is part of GPSTk, the GPS Toolkit. 00006 // 00007 // The GPSTk is free software; you can redistribute it and/or modify 00008 // it under the terms of the GNU Lesser General Public License as published 00009 // by the Free Software Foundation; either version 2.1 of the License, or 00010 // any later version. 00011 // 00012 // The GPSTk is distributed in the hope that it will be useful, 00013 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 // GNU Lesser General Public License for more details. 00016 // 00017 // You should have received a copy of the GNU Lesser General Public 00018 // License along with GPSTk; if not, write to the Free Software Foundation, 00019 // Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00020 // 00021 // Copyright 2004, The University of Texas at Austin 00022 // 00023 //============================================================================ 00024 00025 //============================================================================ 00026 // 00027 //This software developed by Applied Research Laboratories at the University of 00028 //Texas at Austin, under contract to an agency or agencies within the U.S. 00029 //Department of Defense. The U.S. Government retains all rights to use, 00030 //duplicate, distribute, disclose, or release this software. 00031 // 00032 //Pursuant to DoD Directive 523024 00033 // 00034 // DISTRIBUTION STATEMENT A: This software has been approved for public 00035 // release, distribution is unlimited. 00036 // 00037 //============================================================================= 00038 00039 #ifndef ASHTECHPBEN_HPP 00040 #define ASHTECHPBEN_HPP 00041 00047 #include "AshtechData.hpp" 00048 00049 namespace gpstk 00050 { 00051 class AshtechPBEN : public AshtechData 00052 { 00053 public: 00054 00055 AshtechPBEN() {}; 00056 00057 std::string header; // 11 characters exactly 00058 00059 double sow; 00060 std::string sitename; // 4 characters exactly 00061 double navx; // meters 00062 double navy; // meters 00063 double navz; // meters 00064 float navt; // meters 00065 float navxdot; // meters/sec 00066 float navydot; // meters/sec 00067 float navzdot; // meters/sec 00068 float navtdot; // meters/sec 00069 unsigned pdop; 00070 00071 // These items are not part of the binary output and only exist in the 00072 // ascii output 00073 float lat, lon, alt, numSV, hdop, vdop, tdop; 00074 00075 00076 static const char* myId; 00077 00078 virtual std::string getName() const {return "pben";} 00079 00080 bool checkId(std::string hdrId) const {return hdrId==myId;} 00081 00082 void dump(std::ostream& out) const throw(); 00083 00084 virtual void decode(const std::string& data) 00085 throw(std::exception, FFStreamError); 00086 00087 protected: 00088 virtual void reallyGetRecord(FFStream& ffs) 00089 throw(std::exception, FFStreamError, EndOfFile); 00090 }; 00091 } // namespace gpstk 00092 00093 #endif
1.3.9.1