OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimFontFactoryRegistry.h
Go to the documentation of this file.
1 //*******************************************************************
2 //
3 // License: See top level LICENSE.txt file.
4 //
5 // Author: Garrett Potts (gpotts@imagelinks.com)
6 // Description:
7 //
8 //********************************************************************
9 // $Id: ossimFontFactoryRegistry.h 15766 2009-10-20 12:37:09Z gpotts $
10 #ifndef ossimFontFactoryRegistry_HEADER
11 #define ossimFontFactoryRegistry_HEADER
12 #include <vector>
16 #include <ossim/font/ossimFont.h>
17 #include <ossim/base/ossimRefPtr.h>
18 
19 
21 {
22 public:
23  static ossimFontFactoryRegistry* instance();
24 
25  bool registerFactory(ossimFontFactoryBase* factory);
26  void unregisterFactory(ossimFontFactoryBase* factory);
27  bool findFactory(ossimFontFactoryBase* factory)const;
28 
29  ossimFont* createFont(const ossimFontInformation& information)const;
30  ossimFont* createFont(const ossimFilename& file)const;
31 
35  void getFontInformation(std::vector<ossimFontInformation>& informationList)const;
36 
40  void getFontInformationFamilyName(std::vector<ossimFontInformation>& informationList,
41  const ossimString& familyName)const;
42 
46  void getFontInformationContainingFamilyName(std::vector<ossimFontInformation>& informationList,
47  const ossimString& familyName)const;
48 
54  ossimFont* getDefaultFont()const;
55 
56 protected:
58 
59  //static ossimFontFactoryRegistry* theInstance;
60 
61  std::vector<ossimFontFactoryBase*> theFactoryList;
62 
64 
65 private:
67  void operator =(const ossimFontFactoryRegistry& rhs);
68 };
69 
70 #endif
#define OSSIMDLLEXPORT
std::vector< ossimFontFactoryBase * > theFactoryList
ossimRefPtr< ossimFont > theDefaultFont