]> git.mxchange.org Git - flightgear.git/blobdiff - src/Navaids/navlist.hxx
Reduce severity of a failure to create a marker beacon due to an unknown runway from...
[flightgear.git] / src / Navaids / navlist.hxx
index 6b4b6365c1342659530617ba7d56af36b04cc20b..de9dc2c358db7853e0b73053a3690f6ab1d05fbc 100644 (file)
@@ -76,12 +76,15 @@ public:
       */
     FGNavRecord *findByFreq( double freq, const SGGeod& position);
 
-    // Given an Ident and optional freqency and type , 
+    nav_list_type findAllByFreq( double freq, const SGGeod& position, 
+                                const FGPositioned::Type type = FGPositioned::INVALID);
+  
+    // Given an Ident and optional frequency and type ,
     // return a list of matching stations.
     const nav_list_type findByIdentAndFreq( const std::string& ident,
         const double freq = 0.0, const FGPositioned::Type = FGPositioned::INVALID );
 
-    // Given an Ident and optional freqency and type , 
+    // Given an Ident and optional frequency and type ,
     // return a list of matching stations sorted by distance to the given position
     const nav_list_type findByIdentAndFreq( const SGGeod & position,
         const std::string& ident, const double freq = 0.0, 
@@ -89,6 +92,23 @@ public:
 
     // given a frequency returns the first matching entry
     FGNavRecord *findStationByFreq( double frequency );
+  
+  class TypeFilter : public FGPositioned::Filter
+  {
+  public:
+    TypeFilter(const FGPositioned::Type type);
+    
+    virtual FGPositioned::Type minType() const {
+      return _mintype;
+    }
+    
+    virtual FGPositioned::Type maxType()  const {
+      return _maxtype;
+    }
+  private:
+    FGPositioned::Type _mintype;
+    FGPositioned::Type _maxtype;
+  };
 };