Source code for src.openCHA.datapipes.initialize_datapipe
from typing import Any
from openCHA.datapipes import DataPipe
from openCHA.datapipes import DATAPIPE_TO_CLASS
from openCHA.datapipes import DatapipeType
[docs]
def initialize_datapipe(
datapipe: str = DatapipeType.MEMORY, **kwargs: Any
) -> DataPipe:
"""
Initializes and returns an instance of a data pipe based on the specified 'datapipe' type.
Args:
datapipe (str , optional): A string specifying the type of data pipe to initialize (default is DatapipeType.MEMORY).
Make sure you always use the DatapipeType enum and don't directly put the string names.
kwargs (Any): Optional keyword arguments to be passed to the data pipe constructor.
Return:
DataPipe: An instance of the selected data pipe class.
Raise:
ValueError: If the specified 'datapipe' type is not valid, with a message listing valid types.
Example:
.. code-block:: python
from openCHA.datapipes import DatapipeType
memory = initialize_datapipe(datapipe=DatapipeType.MEMORY)
"""
if datapipe not in DATAPIPE_TO_CLASS:
raise ValueError(
f"Got unknown planner type: {datapipe}. "
f"Valid types are: {DATAPIPE_TO_CLASS.keys()}."
)
datapipe_cls = DATAPIPE_TO_CLASS[datapipe]
datapipe = datapipe_cls()
return datapipe