OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimEllipsoidFactory.h
Go to the documentation of this file.
1 //*******************************************************************
2 //
3 // License: See top level LICENSE.txt file.
4 //
5 // Author: Garrett Potts
6 //
7 // Description:
8 //
9 // Thie file contains the ossimEllipsoidFactory.
10 //*******************************************************************
11 // $Id: ossimEllipsoidFactory.h 22857 2014-08-05 15:02:58Z gpotts $
12 
13 #ifndef ossimEllipsoidFactory_HEADER
14 #define ossimEllipsoidFactory_HEADER
15 
17 #include <map>
18 #include <string>
19 
20 class ossimEllipsoid;
21 class ossimString;
22 class ossimWgs84Ellipsoid;
23 class ossimWgs72Ellipsoid;
24 
26 {
27 public:
28  virtual ~ossimEllipsoidFactory();
29  const ossimEllipsoid* create(const ossimString &code)const;
30  const ossimEllipsoid* wgs84()const{return theWgs84Ellipsoid;}
31  const ossimEllipsoid* wgs72()const{return theWgs72Ellipsoid;}
32 
35  ossim_uint32 findEpsgCode(const ossimString &alpha_code) const;
36 
37  static ossimEllipsoidFactory* instance();
38 
39 private:
40  typedef std::map<std::string, ossimEllipsoid*> TableType;
41  typedef std::map<ossim_uint32, std::string> EpsgTableType;
42 
43  //static ossimEllipsoidFactory* theInstance;
49  void initializeTable();
50  void deleteAll();
51 };
52 
53 #endif
const ossimEllipsoid * wgs72() const
#define OSSIMDLLEXPORT
std::map< ossim_uint32, std::string > EpsgTableType
std::map< std::string, ossimEllipsoid * > TableType
ossimEllipsoid * theWgs72Ellipsoid
ossimEllipsoid * theWgs84Ellipsoid
const ossimEllipsoid * wgs84() const
unsigned int ossim_uint32