00001 #include    "FTLibrary.h"
00002 
00003 
00004 const FTLibrary&  FTLibrary::Instance()
00005 {
00006     static FTLibrary ftlib;
00007     return ftlib;
00008 }
00009 
00010 
00011 FTLibrary::~FTLibrary()
00012 {
00013     if( library != 0)
00014     {
00015         FT_Done_FreeType( *library);
00016 
00017         delete library;
00018         library= 0;
00019     }
00020 
00021 
00022 
00023 
00024 
00025 
00026 
00027 
00028 }
00029 
00030 
00031 FTLibrary::FTLibrary()
00032 :   library(0),
00033     err(0)
00034 {
00035     Initialise();
00036 }
00037 
00038 
00039 bool FTLibrary::Initialise()
00040 {
00041     if( library != 0)
00042         return true;
00043 
00044     library = new FT_Library;
00045     
00046     err = FT_Init_FreeType( library);
00047     if( err)
00048     {
00049         delete library;
00050         library = 0;
00051         return false;
00052     }
00053     
00054 
00055 
00056 
00057 
00058 
00059 
00060 
00061 
00062 
00063     return true;
00064 }