gemseo.utils.base_name_generator module#

Base class for a tool to generate names.

class BaseNameGenerator(naming_method=Naming.NUMBERED)[source]#

Bases: Serializable

A class to generate names.

Initialize self. See help(type(self)) for accurate signature.

Parameters:

naming_method (Naming) --

The method to create the names.

By default it is set to "NUMBERED".

class Naming(*values)[source]#

Bases: StrEnum

The method to generate names.

DATED_UUID = 'DATED_UUID'#

A unique dated name based on the UUID function is generated.

For instance, "2025-07-10_15h26min35s_UUID".

This option shall be used if multiple MDO processes are run in the same working directory. This is multi-process safe.

NUMBERED = 'NUMBERED'#

The generated names use an integer i+1, i+2, i+3 etc, where i is the maximum value of the already existing names.

UUID = 'UUID'#

A unique name based on the UUID function is generated.

This option shall be used if multiple MDO processes are run in the same working directory. This is multi-process safe.