30 #ifndef _CEGUIWindowFactoryManager_h_ 
   31 #define _CEGUIWindowFactoryManager_h_ 
   33 #include "CEGUIBase.h" 
   34 #include "CEGUIString.h" 
   35 #include "CEGUISingleton.h" 
   36 #include "CEGUILogger.h" 
   37 #include "CEGUIIteratorBase.h" 
   42 #       pragma warning(push) 
   43 #       pragma warning(disable : 4275) 
   44 #       pragma warning(disable : 4251) 
  102                 const String&   getActiveTarget(
void) 
const;
 
  111                 uint    getStackedTargetCount(
void) 
const;
 
  116                 typedef std::vector<String>     TargetTypeStack;                
 
  118                 TargetTypeStack d_targetStack;          
 
  131                 Logger::getSingleton().logEvent(
"CEGUI::WindowFactoryManager singleton created");
 
  141                 Logger::getSingleton().logEvent(
"CEGUI::WindowFactoryManager singleton destroyed");
 
  178         void    removeFactory(
const String& name);
 
  237     bool        isFactoryPresent(
const String& name) 
const;
 
  265         void    addWindowTypeAlias(
const String& aliasName, 
const String& targetType);
 
  285         void    removeWindowTypeAlias(
const String& aliasName, 
const String& targetType);
 
  315     void addFalagardWindowMapping(
const String& newType, 
const String& targetType, 
const String& lookName, 
const String& renderer);
 
  324     void removeFalagardWindowMapping(
const String& type);
 
  337     bool isFalagardMappedType(
const String& type) 
const;
 
  351     const String& getMappedLookForType(
const String& type) 
const;
 
  365     const String& getMappedRendererForType(
const String& type) 
const;
 
  385     String getDereferencedAliasType(
const String& type) 
const;
 
  399     const FalagardWindowMapping& getFalagardMappingForType(
const String& type) 
const;
 
  405         typedef std::map<String, WindowFactory*, String::FastLessCompare>       WindowFactoryRegistry;          
 
  406         typedef std::map<String, AliasTargetStack, String::FastLessCompare>     TypeAliasRegistry;              
 
  407     typedef std::map<String, FalagardWindowMapping, String::FastLessCompare> FalagardMapRegistry;    
 
  409         WindowFactoryRegistry   d_factoryRegistry;                      
 
  410         TypeAliasRegistry               d_aliasRegistry;                        
 
  411     FalagardMapRegistry     d_falagardRegistry;         
 
  425         WindowFactoryIterator   getIterator(
void) 
const;
 
  432         TypeAliasIterator       getAliasIterator(
void) 
const;
 
  439     FalagardMappingIterator getFalagardMappingIterator() 
const;
 
  445 #if defined(_MSC_VER) 
  446 #       pragma warning(pop) 
  449 #endif  // end of guard _CEGUIWindowFactoryManager_h_