Chemical Data Processing Library Python API - Version 1.1.1
Classes | Static Public Member Functions | Static Public Attributes | List of all members
CDPL.Chem.ReactionIOManager Class Reference

A singleton class that serves as a global registry for Chem.ReactionInputHandler and Chem.ReactionOutputHandler implementation instances. More...

+ Inheritance diagram for CDPL.Chem.ReactionIOManager:

Classes

class  InputHandlerSequence
 
class  OutputHandlerSequence
 

Static Public Member Functions

None registerInputHandler (ReactionInputHandler handler)
 Registers the specified Chem.ReactionInputHandler implementation instance. More...
 
ReactionInputHandler getInputHandler (int idx)
 Returns a reference to the registered Chem.ReactionInputHandler implementation instance with the specified index. More...
 
ReactionInputHandler getInputHandlerByFormat (Base.DataFormat fmt)
 Returns a reference to a Chem.ReactionInputHandler implementation instance registered for the specified data format. More...
 
ReactionInputHandler getInputHandlerByName (str name)
 Returns a reference to a Chem.ReactionInputHandler implementation instance registered for the data format with the specified name. More...
 
ReactionInputHandler getInputHandlerByFileExtension (str file_ext)
 Returns a reference to a Chem.ReactionInputHandler implementation instance registered for the data format with the specified file extension. More...
 
ReactionInputHandler getInputHandlerByMimeType (str mime_type)
 Returns a reference to a Chem.ReactionInputHandler implementation instance registered for the data format with the specified mime-type. More...
 
bool unregisterInputHandler (Base.DataFormat fmt)
 Unregisters the Chem.ReactionInputHandler implementation instance for the specified data format. More...
 
None unregisterInputHandler (int idx)
 Unregisters the Chem.ReactionInputHandler implementation instance with the specified index. More...
 
bool unregisterInputHandler (ReactionInputHandler handler)
 Unregisters the specified Chem.ReactionInputHandler implementation instance. More...
 
int getNumInputHandlers ()
 Returns the number of registered Chem.ReactionInputHandler implementation instances. More...
 
InputHandlerSequence getInputHandlers ()
 
None registerOutputHandler (ReactionOutputHandler handler)
 Registers the specified Chem.ReactionOutputHandler implementation instance. More...
 
ReactionOutputHandler getOutputHandler (int idx)
 Returns a reference to the registered Chem.ReactionOutputHandler implementation instance with the specified index. More...
 
ReactionOutputHandler getOutputHandlerByFormat (Base.DataFormat fmt)
 Returns a reference to a Chem.ReactionOutputHandler implementation instance registered for the specified data format. More...
 
ReactionOutputHandler getOutputHandlerByName (str name)
 Returns a reference to a Chem.ReactionOutputHandler implementation instance registered for the data format with the specified name. More...
 
ReactionOutputHandler getOutputHandlerByFileExtension (str file_ext)
 Returns a reference to a Chem.ReactionOutputHandler implementation instance registered for the data format with the specified file extension. More...
 
ReactionOutputHandler getOutputHandlerByMimeType (str mime_type)
 Returns a reference to a Chem.ReactionOutputHandler implementation instance registered for the data format with the specified mime-type. More...
 
bool unregisterOutputHandler (Base.DataFormat fmt)
 Unregisters the Chem.ReactionOutputHandler implementation instance for the specified data format. More...
 
None unregisterOutputHandler (int idx)
 Unregisters the Chem.ReactionOutputHandler implementation instance with the specified index. More...
 
bool unregisterOutputHandler (ReactionOutputHandler handler)
 Unregisters the specified Chem.ReactionOutputHandler implementation instance. More...
 
int getNumOutputHandlers ()
 Returns the number of registered Chem.ReactionOutputHandler implementation instances. More...
 
OutputHandlerSequence getOutputHandlers ()
 

Static Public Attributes

 inputHandlers = _HIDDEN_VALUE_
 
int numInputHandlers = 12
 
 outputHandlers = _HIDDEN_VALUE_
 
int numOutputHandlers = 16
 

Detailed Description

A singleton class that serves as a global registry for Chem.ReactionInputHandler and Chem.ReactionOutputHandler implementation instances.

DataIOManager provides static methods for the registration and lookup of Chem.ReactionInputHandler and Chem.ReactionOutputHandler implementation instances that handle different input and output storage formats.

Input and output handlers are registered by the methods registerInputHandler() and registerOutputHandler(). These methods expect a reference to an instance of the respective handler implementation as an argument (please note that the registered instance must not be destroyed as long as it is accessible via the DataIOManager interface!).

For the removal of registered handlers the unregisterInputHandler() and unregisterOutputHandler() family of overloaded methods is provided. These methods accept a reference to the registered handler instance, the handler index, the handled data format or an iterator pointing to the handler as an argument.

Registered input handlers can be queried by the methods getInputHandlerByFormat(), getInputHandlerByName(), getInputHandlerByFileExtension() and getInputHandlerByMimeType(), which allow to find a suitable handler for a given data format, data format name, file extension or mime-type. For the registered output handlers similar methods are provided.

I/O handlers for data formats and object types supported by the CDPL are registered in the static library initialization code. These built-in handlers are accessible by the linking client code as soon as the library initialization has finished.

Member Function Documentation

◆ registerInputHandler()

None CDPL.Chem.ReactionIOManager.registerInputHandler ( ReactionInputHandler  handler)
static

Registers the specified Chem.ReactionInputHandler implementation instance.

Parameters
handlerThe Chem.ReactionInputHandler implementation instance to register.

◆ getInputHandler()

ReactionInputHandler CDPL.Chem.ReactionIOManager.getInputHandler ( int  idx)
static

Returns a reference to the registered Chem.ReactionInputHandler implementation instance with the specified index.

Parameters
idxThe zero-based index of the Chem.ReactionInputHandler implementation instance to return.
Returns
A reference to the Chem.ReactionInputHandler implementation instance with the specified index.
Exceptions
Base.IndexErrorif idx is out of bounds.

◆ getInputHandlerByFormat()

ReactionInputHandler CDPL.Chem.ReactionIOManager.getInputHandlerByFormat ( Base.DataFormat  fmt)
static

Returns a reference to a Chem.ReactionInputHandler implementation instance registered for the specified data format.

Parameters
fmtSpecifies the data format that is associated with the requested Chem.ReactionInputHandler implementation instance.
Returns
A reference to a Chem.ReactionInputHandler implementation instance registered for the specified data format, or None if not available.

◆ getInputHandlerByName()

ReactionInputHandler CDPL.Chem.ReactionIOManager.getInputHandlerByName ( str  name)
static

Returns a reference to a Chem.ReactionInputHandler implementation instance registered for the data format with the specified name.

Parameters
nameSpecifies the name of the data format that is associated with the requested Chem.ReactionInputHandler implementation instance.
Returns
A reference to a Chem.ReactionInputHandler implementation instance registered for the data format with the specified name, or None if not available.
Note
The matching of the name is not case-sensitive.

◆ getInputHandlerByFileExtension()

ReactionInputHandler CDPL.Chem.ReactionIOManager.getInputHandlerByFileExtension ( str  file_ext)
static

Returns a reference to a Chem.ReactionInputHandler implementation instance registered for the data format with the specified file extension.

Parameters
file_extSpecifies the file extension of the data format that is associated with the requested Chem.ReactionInputHandler implementation instance.
Returns
A reference to a Chem.ReactionInputHandler implementation instance registered for the data format with the specified file extension, or None if not available.
Note
The matching of the file extension is not case-sensitive.

◆ getInputHandlerByMimeType()

ReactionInputHandler CDPL.Chem.ReactionIOManager.getInputHandlerByMimeType ( str  mime_type)
static

Returns a reference to a Chem.ReactionInputHandler implementation instance registered for the data format with the specified mime-type.

Parameters
mime_typeSpecifies the mime-type of the data format that is associated with the requested Chem.ReactionInputHandler implementation instance.
Returns
A reference to a Chem.ReactionInputHandler implementation instance registered for the data format with the specified mime-type, or None if not available.
Note
The matching of the mime-type is not case-sensitive.

◆ unregisterInputHandler() [1/3]

bool CDPL.Chem.ReactionIOManager.unregisterInputHandler ( Base.DataFormat  fmt)
static

Unregisters the Chem.ReactionInputHandler implementation instance for the specified data format.

Only one handler instance at a time will be unregistered (in a first in - first out manner). If more than one handler instance has been registered for the given data format, the method has to be called multiple times to unregister all instances.

Parameters
fmtSpecifies the data format that is associated with the handler instance to unregister.
Returns
True if a handler instance for the specified data format was found and has been unregistered, and False otherwise.

◆ unregisterInputHandler() [2/3]

None CDPL.Chem.ReactionIOManager.unregisterInputHandler ( int  idx)
static

Unregisters the Chem.ReactionInputHandler implementation instance with the specified index.

Parameters
idxThe zero-based index of the Chem.ReactionInputHandler implementation instance to unregister.
Exceptions
Base.IndexErrorif idx is out of bounds.

◆ unregisterInputHandler() [3/3]

bool CDPL.Chem.ReactionIOManager.unregisterInputHandler ( ReactionInputHandler  handler)
static

Unregisters the specified Chem.ReactionInputHandler implementation instance.

Parameters
handlerThe Chem.ReactionInputHandler implementation instance to unregister.
Returns
True if the handler instance was found and has been unregistered, and False otherwise.

◆ getNumInputHandlers()

int CDPL.Chem.ReactionIOManager.getNumInputHandlers ( )
static

Returns the number of registered Chem.ReactionInputHandler implementation instances.

Returns
The number of registered Chem.ReactionInputHandler implementation instances.

◆ getInputHandlers()

InputHandlerSequence CDPL.Chem.ReactionIOManager.getInputHandlers ( )
static
Parameters
<br>
Returns

◆ registerOutputHandler()

None CDPL.Chem.ReactionIOManager.registerOutputHandler ( ReactionOutputHandler  handler)
static

Registers the specified Chem.ReactionOutputHandler implementation instance.

Parameters
handlerThe Chem.ReactionOutputHandler implementation instance to register.

◆ getOutputHandler()

ReactionOutputHandler CDPL.Chem.ReactionIOManager.getOutputHandler ( int  idx)
static

Returns a reference to the registered Chem.ReactionOutputHandler implementation instance with the specified index.

Parameters
idxThe zero-based index of the Chem.ReactionOutputHandler implementation instance to return.
Returns
A reference to the Chem.ReactionOutputHandler implementation instance with the specified index.
Exceptions
Base.IndexErrorif idx is out of bounds.

◆ getOutputHandlerByFormat()

ReactionOutputHandler CDPL.Chem.ReactionIOManager.getOutputHandlerByFormat ( Base.DataFormat  fmt)
static

Returns a reference to a Chem.ReactionOutputHandler implementation instance registered for the specified data format.

Parameters
fmtSpecifies the data format that is associated with the requested Chem.ReactionOutputHandler implementation instance.
Returns
A reference to a Chem.ReactionOutputHandler implementation instance registered for the specified data format, or None if not available.

◆ getOutputHandlerByName()

ReactionOutputHandler CDPL.Chem.ReactionIOManager.getOutputHandlerByName ( str  name)
static

Returns a reference to a Chem.ReactionOutputHandler implementation instance registered for the data format with the specified name.

Parameters
nameSpecifies the name of the data format that is associated with the requested Chem.ReactionOutputHandler implementation instance.
Returns
A reference to a Chem.ReactionOutputHandler implementation instance registered for the data format with the specified name, or None if not available.
Note
The matching of the name is not case-sensitive.

◆ getOutputHandlerByFileExtension()

ReactionOutputHandler CDPL.Chem.ReactionIOManager.getOutputHandlerByFileExtension ( str  file_ext)
static

Returns a reference to a Chem.ReactionOutputHandler implementation instance registered for the data format with the specified file extension.

Parameters
file_extSpecifies the file extension of the data format that is associated with the requested Chem.ReactionOutputHandler implementation instance.
Returns
A reference to a Chem.ReactionOutputHandler implementation instance registered for the data format with the specified file extension, or None if not available.
Note
The matching of the file extension is not case-sensitive.

◆ getOutputHandlerByMimeType()

ReactionOutputHandler CDPL.Chem.ReactionIOManager.getOutputHandlerByMimeType ( str  mime_type)
static

Returns a reference to a Chem.ReactionOutputHandler implementation instance registered for the data format with the specified mime-type.

Parameters
mime_typeSpecifies the mime-type of the data format that is associated with the requested Chem.ReactionOutputHandler implementation instance.
Returns
A reference to a Chem.ReactionOutputHandler implementation instance registered for the data format with the specified mime-type, or None if not available.
Note
The matching of the mime-type is not case-sensitive.

◆ unregisterOutputHandler() [1/3]

bool CDPL.Chem.ReactionIOManager.unregisterOutputHandler ( Base.DataFormat  fmt)
static

Unregisters the Chem.ReactionOutputHandler implementation instance for the specified data format.

Only one handler instance at a time will be unregistered (in a first in - first out manner). If more than one handler instance has been registered for the given data format, the method has to be called multiple times to unregister all instances.

Parameters
fmtSpecifies the data format that is associated with the handler instance to unregister.
Returns
True if a handler instance for the specified data format was found and has been unregistered, and False otherwise.

◆ unregisterOutputHandler() [2/3]

None CDPL.Chem.ReactionIOManager.unregisterOutputHandler ( int  idx)
static

Unregisters the Chem.ReactionOutputHandler implementation instance with the specified index.

Parameters
idxThe zero-based index of the Chem.ReactionOutputHandler implementation instance to unregister.
Exceptions
Base.IndexErrorif idx is out of bounds.

◆ unregisterOutputHandler() [3/3]

bool CDPL.Chem.ReactionIOManager.unregisterOutputHandler ( ReactionOutputHandler  handler)
static

Unregisters the specified Chem.ReactionOutputHandler implementation instance.

Parameters
handlerThe Chem.ReactionOutputHandler implementation instance to unregister.
Returns
True if the handler instance was found and has been unregistered, and False otherwise.

◆ getNumOutputHandlers()

int CDPL.Chem.ReactionIOManager.getNumOutputHandlers ( )
static

Returns the number of registered Chem.ReactionOutputHandler implementation instances.

Returns
The number of registered Chem.ReactionOutputHandler implementation instances.

◆ getOutputHandlers()

OutputHandlerSequence CDPL.Chem.ReactionIOManager.getOutputHandlers ( )
static
Parameters
<br>
Returns