Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

LoaderFileTypeRegistry Class Reference

This class maintains the set of all known LoaderFileTypes in the universe. More...

#include <loaderFileTypeRegistry.h>

List of all members.

Public Member Functions

 ~LoaderFileTypeRegistry ()
int get_num_types () const
 Returns the total number of types registered.

LoaderFileTypeget_type (int n) const
 Returns the nth type registered.

LoaderFileTypeget_type_from_extension (const string &extension) const
 Determines the type of the file based on the indicated extension (without a leading dot).

void write_types (ostream &out, int indent_level=0) const
 Writes a list of supported file types to the indicated output stream, one per line.

void register_type (LoaderFileType *type)
 Defines a new LoaderFileType in the universe.


Static Public Member Functions

LoaderFileTypeRegistry * get_ptr ()
 Returns a pointer to the global LoaderFileTypeRegistry object.


Protected Member Functions

 LoaderFileTypeRegistry ()

Private Types

typedef pvector< LoaderFileType * > Types
typedef pmap< string, LoaderFileType * > Extensions

Private Attributes

Types _types
Extensions _extensions

Static Private Attributes

LoaderFileTypeRegistry * _global_ptr


Detailed Description

This class maintains the set of all known LoaderFileTypes in the universe.

Definition at line 42 of file loaderFileTypeRegistry.h.


Member Typedef Documentation

typedef pmap<string, LoaderFileType *> LoaderFileTypeRegistry::Extensions [private]
 

Definition at line 64 of file loaderFileTypeRegistry.h.

typedef pvector<LoaderFileType *> LoaderFileTypeRegistry::Types [private]
 

Definition at line 61 of file loaderFileTypeRegistry.h.


Constructor & Destructor Documentation

LoaderFileTypeRegistry::LoaderFileTypeRegistry  )  [protected]
 

Definition at line 41 of file loaderFileTypeRegistry.cxx.

LoaderFileTypeRegistry::~LoaderFileTypeRegistry  ) 
 

Definition at line 52 of file loaderFileTypeRegistry.cxx.

References _global_ptr, and NULL.


Member Function Documentation

int LoaderFileTypeRegistry::get_num_types  )  const
 

Returns the total number of types registered.

Definition at line 82 of file loaderFileTypeRegistry.cxx.

References _extensions, and downcase().

LoaderFileTypeRegistry * LoaderFileTypeRegistry::get_ptr  )  [static]
 

Returns a pointer to the global LoaderFileTypeRegistry object.

Definition at line 66 of file loaderFileTypeRegistry.cxx.

References _types.

Referenced by Loader::~Loader().

LoaderFileType * LoaderFileTypeRegistry::get_type int  n  )  const
 

Returns the nth type registered.

Definition at line 95 of file loaderFileTypeRegistry.cxx.

References NULL.

LoaderFileType * LoaderFileTypeRegistry::get_type_from_extension const string &  extension  )  const
 

Determines the type of the file based on the indicated extension (without a leading dot).

Returns NULL if the extension matches no known file types.

Definition at line 113 of file loaderFileTypeRegistry.cxx.

References _types.

Referenced by Loader::~Loader().

void LoaderFileTypeRegistry::register_type LoaderFileType type  ) 
 

Defines a new LoaderFileType in the universe.

Definition at line 159 of file loaderFileTypeRegistry.cxx.

void LoaderFileTypeRegistry::write_types ostream &  out,
int  indent_level = 0
const
 

Writes a list of supported file types to the indicated output stream, one per line.

Definition at line 135 of file loaderFileTypeRegistry.cxx.


Member Data Documentation

Extensions LoaderFileTypeRegistry::_extensions [private]
 

Definition at line 65 of file loaderFileTypeRegistry.h.

Referenced by get_num_types().

LoaderFileTypeRegistry * LoaderFileTypeRegistry::_global_ptr [static, private]
 

Definition at line 31 of file loaderFileTypeRegistry.cxx.

Referenced by ~LoaderFileTypeRegistry().

Types LoaderFileTypeRegistry::_types [private]
 

Definition at line 62 of file loaderFileTypeRegistry.h.

Referenced by get_ptr(), and get_type_from_extension().


The documentation for this class was generated from the following files:
Generated on Fri May 2 00:52:02 2003 for Panda by doxygen1.3