00001 #pragma ident "$Id: XvtStore.hpp 811 2007-10-05 14:14:15Z 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 00045 #ifndef GPSTK_XVTSTORE_HPP 00046 #define GPSTK_XVTSTORE_HPP 00047 00048 #include <iostream> 00049 #include <string> 00050 #include <list> 00051 #include <map> 00052 00053 #include "Exception.hpp" 00054 #include "SatID.hpp" 00055 #include "DayTime.hpp" 00056 #include "Xvt.hpp" 00057 00058 namespace gpstk 00059 { 00062 00066 template <class IndexType> 00067 class XvtStore 00068 { 00069 public: 00070 virtual ~XvtStore() 00071 {} 00072 00081 virtual Xvt getXvt(const IndexType id, const DayTime& t) 00082 const throw(InvalidRequest) 00083 = 0; 00084 00085 00090 virtual void dump(std::ostream& s = std::cout, short detail = 0) 00091 const throw() 00092 {} 00093 00094 00098 virtual void edit(const DayTime& tmin, 00099 const DayTime& tmax = DayTime(DayTime::END_OF_TIME)) 00100 throw() 00101 = 0; 00102 00103 00108 virtual DayTime getInitialTime() 00109 const throw(InvalidRequest) 00110 = 0; 00111 00112 00117 virtual DayTime getFinalTime() 00118 const throw(InvalidRequest) 00119 = 0; 00120 00121 virtual bool velocityIsPresent() 00122 const throw() 00123 = 0; 00124 00125 virtual bool clockIsPresent() 00126 const throw() 00127 = 0; 00128 }; // end class XvtStore 00129 00131 00132 } // namespace 00133 00134 #endif
1.3.9.1