X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FNavaids%2Ffixlist.cxx;h=c51534b1dd8c57095d2cc37f2090e3687238de45;hb=4a79d82ba62fa4e5be759fa0fc4b20220e8da303;hp=b4548a66d74cd27cd0aa1954c3c567046fe7940b;hpb=d777d035a9a56f04e3956abb68930342b9a83a35;p=flightgear.git diff --git a/src/Navaids/fixlist.cxx b/src/Navaids/fixlist.cxx index b4548a66d..c51534b1d 100644 --- a/src/Navaids/fixlist.cxx +++ b/src/Navaids/fixlist.cxx @@ -2,7 +2,7 @@ // // Written by Curtis Olson, started April 2000. // -// Copyright (C) 2000 Curtis L. Olson - curt@flightgear.org +// Copyright (C) 2000 Curtis L. Olson - http://www.flightgear.org/~curt // // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License as @@ -16,7 +16,7 @@ // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software -// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. // // $Id$ @@ -32,9 +32,6 @@ #include "fixlist.hxx" -FGFixList *current_fixlist; - - // Constructor FGFixList::FGFixList( void ) { } @@ -47,7 +44,6 @@ FGFixList::~FGFixList( void ) { // load the navaids and build the map bool FGFixList::init( SGPath path ) { - fixlist.erase( fixlist.begin(), fixlist.end() ); sg_gzifstream in( path.str() ); @@ -83,7 +79,6 @@ bool FGFixList::init( SGPath path ) { fixlist[fix.get_ident()] = fix; in >> skipcomment; } - return true; } @@ -120,3 +115,18 @@ bool FGFixList::query_and_offset( const string& ident, double lon, double lat, *dist = s; return true; } + +const FGFix* FGFixList::findFirstByIdent( const string& ident, bool exact) +{ + fix_map_iterator itr; + if(exact) { + itr = fixlist.find(ident); + } else { + itr = fixlist.lower_bound(ident); + } + if(itr == fixlist.end()) { + return(NULL); + } else { + return(&(itr->second)); + } +}