Murl::Resource::ICollectionFactoryRegistry Interface Referenceabstract

The ICollectionFactoryRegistry interface. More...

#include "murl_resource_i_collection_factory_registry.h"

Inheritance diagram for Murl::Resource::ICollectionFactoryRegistry:

Public Member Functions

virtual Bool RegisterCollectionClass (const ICollection::ClassInfo &collectionClassInfo)=0
 Register a collection class. More...
 
virtual Bool UnregisterCollectionClass (const ICollection::ClassInfo &collectionClassInfo)=0
 Unregister a previously registered collection class. More...
 
virtual Bool RegisterPackageFactory (const IPackageFactory *packageFactory)=0
 Register a package factory. More...
 
virtual Bool UnregisterPackageFactory (const IPackageFactory *packageFactory)=0
 Unregister a previously registered package factory class. More...
 
virtual SInt32 GetRegisteredCollectionClassInfoIndex (const ICollection::ClassInfo &classInfo) const =0
 Query the index of a registered collection class, by its ClassInfo structure. More...
 
virtual SInt32 GetRegisteredCollectionClassInfoIndex (const String &className) const =0
 Query the index of a registered collection class, by its class name. More...
 
virtual UInt32 GetNumberOfRegisteredCollectionClassInfos () const =0
 Get the total number of registered collection classes. More...
 
virtual const ICollection::ClassInfo * GetRegisteredCollectionClassInfo (UInt32 index) const =0
 Get the ClassInfo structure of a registered collection class. More...
 
virtual UInt32 GetNumberOfRegisteredPackageFactories () const =0
 Get the total number of registered package factories. More...
 
virtual const IPackageFactoryGetRegisteredPackageFactory (UInt32 index) const =0
 Get the package factory at a given index. More...
 

Detailed Description

The ICollectionFactoryRegistry interface.

The ICollectionFactoryRegistry interface provides methods to add, remove and query different collection classes that can be instantiated using the Resource::ICollectionFactory implementing this interface. It also allows to register/unregister individual package factories that can be associated with one or more of the given collection factories, so that multiple collection factories can possibly handle the same type(s) of packages.

Member Function Documentation

◆ RegisterCollectionClass()

virtual Bool Murl::Resource::ICollectionFactoryRegistry::RegisterCollectionClass ( const ICollection::ClassInfo &  collectionClassInfo)
pure virtual

Register a collection class.

Parameters
collectionClassInfoThe ClassInfo structure of the collection to register.
Returns
true if successful.

◆ UnregisterCollectionClass()

virtual Bool Murl::Resource::ICollectionFactoryRegistry::UnregisterCollectionClass ( const ICollection::ClassInfo &  collectionClassInfo)
pure virtual

Unregister a previously registered collection class.

Parameters
collectionClassInfoThe ClassInfo structure of the collection to unregister.
Returns
true if successful.

◆ RegisterPackageFactory()

virtual Bool Murl::Resource::ICollectionFactoryRegistry::RegisterPackageFactory ( const IPackageFactory packageFactory)
pure virtual

Register a package factory.

Parameters
packageFactoryThe package factory to register.
Returns
true if successful.

◆ UnregisterPackageFactory()

virtual Bool Murl::Resource::ICollectionFactoryRegistry::UnregisterPackageFactory ( const IPackageFactory packageFactory)
pure virtual

Unregister a previously registered package factory class.

Parameters
packageFactoryThe package factory to unregister.
Returns
true if successful.

◆ GetRegisteredCollectionClassInfoIndex() [1/2]

virtual SInt32 Murl::Resource::ICollectionFactoryRegistry::GetRegisteredCollectionClassInfoIndex ( const ICollection::ClassInfo &  classInfo) const
pure virtual

Query the index of a registered collection class, by its ClassInfo structure.

Parameters
classInfoThe class info structure of the collection class to query.
Returns
The zero-based index, or -1 if not registered.

◆ GetRegisteredCollectionClassInfoIndex() [2/2]

virtual SInt32 Murl::Resource::ICollectionFactoryRegistry::GetRegisteredCollectionClassInfoIndex ( const String className) const
pure virtual

Query the index of a registered collection class, by its class name.

Parameters
classNameThe name of the collection class to query.
Returns
The zero-based index, or -1 if not registered.

◆ GetNumberOfRegisteredCollectionClassInfos()

virtual UInt32 Murl::Resource::ICollectionFactoryRegistry::GetNumberOfRegisteredCollectionClassInfos ( ) const
pure virtual

Get the total number of registered collection classes.

Returns
The number of registered collection classes.

◆ GetRegisteredCollectionClassInfo()

virtual const ICollection::ClassInfo* Murl::Resource::ICollectionFactoryRegistry::GetRegisteredCollectionClassInfo ( UInt32  index) const
pure virtual

Get the ClassInfo structure of a registered collection class.

Parameters
indexThe index to query, from 0 to GetNumberOfRegisteredCollectionClassInfos()-1.
Returns
The class info, or null if the index is out of range.

◆ GetNumberOfRegisteredPackageFactories()

virtual UInt32 Murl::Resource::ICollectionFactoryRegistry::GetNumberOfRegisteredPackageFactories ( ) const
pure virtual

Get the total number of registered package factories.

Returns
The number of registered package factories.

◆ GetRegisteredPackageFactory()

virtual const IPackageFactory* Murl::Resource::ICollectionFactoryRegistry::GetRegisteredPackageFactory ( UInt32  index) const
pure virtual

Get the package factory at a given index.

Parameters
indexThe index to query, from 0 to GetNumberOfRegisteredPackageFactories()-1.
Returns
The package factory, or null if the index is out of range.

The documentation for this interface was generated from the following file:
  • murl_resource_i_collection_factory_registry.h


Copyright © 2011-2024 Spraylight GmbH.