SimpleFilter Class Reference
[GPSTk data structures]

#include <SimpleFilter.hpp>

Inheritance diagram for SimpleFilter:

Inheritance graph
[legend]
Collaboration diagram for SimpleFilter:

Collaboration graph
[legend]
List of all members.

Detailed Description

This class filters out satellites with observations grossly out of bounds.

This class is meant to be used with the GNSS data structures objects found in "DataStructures" class.

A typical way to use this class follows:

   RinexObsStream rin("ebre0300.02o");

   gnssRinex gRin;
   SimpleFilter myFilter;

   while(rin >> gRin)
   {
      gRin >> myFilter;
   }

The "SimpleFilter" object will visit every satellite in the GNSS data structure that is "gRin" and will check that the given code observations are within some (preassigned) boundaries.

By default, the algorithm will check C1 observables, the minimum limit is 15000000.0 meters and the maximum limit is 30000000.0 meters. You may change all these settings with the appropriate set methods.

Also, you may set more than one observable to be checked by passing a "TypeIDSet" object to the appropriate constructors or methods. For instance:

   TypeIDSet typeSet;
   typeSet.insert(TypeID::P1);
   typeSet.insert(TypeID::P2);

   myFilter.setFilteredType(typeSet);

Be warned that if a given satellite does not have the observations required, or if their are out of bounds, the full satellite record will be summarily deleted from the data structure.

Definition at line 90 of file SimpleFilter.hpp.

Public Member Functions

 SimpleFilter ()
 Default constructor. By default, filter C1.
 SimpleFilter (const TypeID &type, const double &min, const double &max)
 Explicit constructor.
 SimpleFilter (const TypeID &type)
 Explicit constructor.
 SimpleFilter (const TypeIDSet &typeSet, const double &min, const double &max)
 Explicit constructor.
 SimpleFilter (const TypeIDSet &typeSet)
 Explicit constructor.
virtual satTypeValueMapProcess (satTypeValueMap &gData) throw (ProcessingException)
 Returns a satTypeValueMap object, filtering the target observables.
virtual SimpleFiltersetMinLimit (const double &min)
 Method to set the minimum limit.
virtual double getMinLimit () const
 Method to get the minimum limit.
virtual SimpleFiltersetMaxLimit (const double &max)
 Method to set the maximum limit.
virtual double getMaxLimit () const
 Method to get the maximum limit.
virtual SimpleFilteraddFilteredType (const TypeID &type)
 Method to add a TypeID to be filtered.
virtual SimpleFiltersetFilteredType (const TypeID &type)
 Method to set a TypeID to be filtered.
virtual SimpleFiltersetFilteredType (const TypeIDSet &typeSet)
 Method to set the TypeID's to be filtered.
virtual TypeIDSet getFilteredType () const
 Method to get the set of TypeID's to be filtered.
virtual gnssSatTypeValueProcess (gnssSatTypeValue &gData) throw (ProcessingException)
 Returns a gnnsSatTypeValue object, filtering the target observables.
virtual gnssRinexProcess (gnssRinex &gData) throw (ProcessingException)
 Returns a gnnsRinex object, filtering the target observables.
virtual int getIndex (void) const
 Returns an index identifying this object.
virtual std::string getClassName (void) const
 Returns a string identifying this object.
virtual ~SimpleFilter ()
 Destructor.

Protected Member Functions

virtual bool checkValue (const double &value) const
 Checks that the value is within the given limits.

Protected Attributes

TypeIDSet filterTypeSet
 Set of types to be filtered.
double minLimit
 Minimum value allowed for input data (in meters).
double maxLimit
 Maximum value allowed for input data (in meters).


Constructor & Destructor Documentation

SimpleFilter  )  [inline]
 

Default constructor. By default, filter C1.

Definition at line 95 of file SimpleFilter.hpp.

SimpleFilter const TypeID type,
const double &  min,
const double &  max
[inline]
 

Explicit constructor.

Parameters:
type TypeID to be filtered.
min Minimum limit (in meters).
max Maximum limit (in meters).

Definition at line 105 of file SimpleFilter.hpp.

References gpstk::max(), and gpstk::min().

SimpleFilter const TypeID type  )  [inline]
 

Explicit constructor.

Parameters:
type TypeID to be filtered.

Definition at line 116 of file SimpleFilter.hpp.

SimpleFilter const TypeIDSet typeSet,
const double &  min,
const double &  max
[inline]
 

Explicit constructor.

Parameters:
typeSet Set of TypeID's to be filtered.
min Minimum limit (in meters).
max Maximum limit (in meters).

Definition at line 127 of file SimpleFilter.hpp.

References gpstk::max(), and gpstk::min().

SimpleFilter const TypeIDSet typeSet  )  [inline]
 

Explicit constructor.

Parameters:
typeSet Set of TypeID's to be filtered.

Definition at line 138 of file SimpleFilter.hpp.

virtual ~SimpleFilter  )  [inline, virtual]
 

Destructor.

Definition at line 233 of file SimpleFilter.hpp.


Member Function Documentation

virtual SimpleFilter& addFilteredType const TypeID type  )  [inline, virtual]
 

Method to add a TypeID to be filtered.

Parameters:
type Extra TypeID to be filtered.

Definition at line 179 of file SimpleFilter.hpp.

virtual bool checkValue const double &  value  )  const [inline, protected, virtual]
 

Checks that the value is within the given limits.

Parameters:
value The value to be test
Returns:
True if check was OK.

Definition at line 245 of file SimpleFilter.hpp.

std::string getClassName void   )  const [virtual]
 

Returns a string identifying this object.

Implements ProcessingClass.

Definition at line 47 of file SimpleFilter.cpp.

virtual TypeIDSet getFilteredType  )  const [inline, virtual]
 

Method to get the set of TypeID's to be filtered.

Definition at line 200 of file SimpleFilter.hpp.

References gpstk::TypeIDSet.

int getIndex void   )  const [virtual]
 

Returns an index identifying this object.

Implements ProcessingClass.

Definition at line 42 of file SimpleFilter.cpp.

virtual double getMaxLimit  )  const [inline, virtual]
 

Method to get the maximum limit.

Definition at line 172 of file SimpleFilter.hpp.

virtual double getMinLimit  )  const [inline, virtual]
 

Method to get the minimum limit.

Definition at line 160 of file SimpleFilter.hpp.

virtual gnssRinex& Process gnssRinex gData  )  throw (ProcessingException) [inline, virtual]
 

Returns a gnnsRinex object, filtering the target observables.

Parameters:
gData Data object holding the data.

Implements ProcessingClass.

Definition at line 219 of file SimpleFilter.hpp.

virtual gnssSatTypeValue& Process gnssSatTypeValue gData  )  throw (ProcessingException) [inline, virtual]
 

Returns a gnnsSatTypeValue object, filtering the target observables.

Parameters:
gData Data object holding the data.

Implements ProcessingClass.

Definition at line 209 of file SimpleFilter.hpp.

satTypeValueMap & Process satTypeValueMap gData  )  throw (ProcessingException) [virtual]
 

Returns a satTypeValueMap object, filtering the target observables.

Parameters:
gData Data object holding the data.

Definition at line 55 of file SimpleFilter.cpp.

References GPSTK_THROW, and gpstk::SatIDSet.

virtual SimpleFilter& setFilteredType const TypeIDSet typeSet  )  [inline, virtual]
 

Method to set the TypeID's to be filtered.

This method will erase previous types.

Parameters:
typeSet Set of TypeID's to be filtered.

Definition at line 195 of file SimpleFilter.hpp.

virtual SimpleFilter& setFilteredType const TypeID type  )  [inline, virtual]
 

Method to set a TypeID to be filtered.

This method will erase previous types.

Parameters:
type TypeID to be filtered.

Definition at line 187 of file SimpleFilter.hpp.

virtual SimpleFilter& setMaxLimit const double &  max  )  [inline, virtual]
 

Method to set the maximum limit.

Parameters:
max Maximum limit (in meters).

Definition at line 167 of file SimpleFilter.hpp.

virtual SimpleFilter& setMinLimit const double &  min  )  [inline, virtual]
 

Method to set the minimum limit.

Parameters:
min Minimum limit (in meters).

Definition at line 155 of file SimpleFilter.hpp.


Member Data Documentation

TypeIDSet filterTypeSet [protected]
 

Set of types to be filtered.

Definition at line 250 of file SimpleFilter.hpp.

double maxLimit [protected]
 

Maximum value allowed for input data (in meters).

Definition at line 256 of file SimpleFilter.hpp.

double minLimit [protected]
 

Minimum value allowed for input data (in meters).

Definition at line 253 of file SimpleFilter.hpp.


The documentation for this class was generated from the following files:
Generated on Wed Feb 8 03:31:33 2012 for GPS ToolKit Software Library by  doxygen 1.3.9.1