UAbstractGymConnector
class UAbstractGymConnector : public UObject, public IGymConnector
An abstract class for connectors between Unreal Engine and gym environments.
class provides the basic structure and functionality for connecting Unreal Engine environments with external gym environments for training purposes.
Dependencies
This type depends on:
Inherits from: public UObject, public IGymConnector
Subclassed by: UExternalGymConnector
Public Interface
Constructor:
UAbstractGymConnector
UAbstractGymConnector()
Constructor for the abstract gym connector.
Initializes the connector with default values.
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 74, column 1)
Implementation: Schola/Source/Schola/Private/GymConnectors/AbstractGymConnector.cpp
(lines 5-7)
Public Functions:
Init
virtual void Init(const FTrainingDefinition &AgentDefinitions)
Initialize this gym connector, setting up services and sending agent definitions.
Note: This function should be implemented by a derived class.
Parameters:
AgentDefinitions
(const FTrainingDefinition &
) – [in] - The definitions of the agents that will be trained.
Attributes: virtual
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 81, column 14)
Implementation: Schola/Source/Schola/Private/GymConnectors/AbstractGymConnector.cpp
(lines 9)
Init
void Init()
Initialize this gym connector, collecting environments and training definitions.
Note: Calls the other Init function with the SharedTrainingDefinition.
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 87, column 6)
Implementation: Schola/Source/Schola/Private/GymConnectors/AbstractGymConnector.cpp
(lines 11-28)
ResetCompletedEnvironments
virtual void ResetCompletedEnvironments() override
Reset all the environments that have completed.
Attributes: virtual
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 92, column 14)
Implementation: Schola/Source/Schola/Private/GymConnectors/AbstractGymConnector.cpp
(lines 30-58)
UpdateEnvironments
virtual void UpdateEnvironments(FTrainingStateUpdate &StateUpdate) override
Update the environments with the new state update.
Parameters:
StateUpdate
(FTrainingStateUpdate &
) – [in] The new state update.
Attributes: virtual
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 98, column 14)
Implementation: Schola/Source/Schola/Private/GymConnectors/AbstractGymConnector.cpp
(lines 129-157)
CollectEnvironmentStates
virtual void CollectEnvironmentStates()
Collect all the environment states.
Attributes: virtual
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 103, column 14)
Implementation: Schola/Source/Schola/Private/GymConnectors/AbstractGymConnector.cpp
(lines 82-91)
SetStatus
void SetStatus(EConnectorStatus NewStatus)
Set the status of the connector.
Parameters:
NewStatus
(EConnectorStatus
) – [in] The new status of the connector.
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 109, column 6)
Implementation: Schola/Source/Schola/Private/GymConnectors/AbstractGymConnector.cpp
(lines 93-108)
SubmitEnvironmentStates
inline virtual void SubmitEnvironmentStates()
Submit environment states to the other end of the connector.
Note: This function should be implemented by a derived class.
Attributes: inline
, virtual
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 115, column 14)
ResolveEnvironmentStateUpdate
inline virtual FTrainingStateUpdate * ResolveEnvironmentStateUpdate()
Resolve the environment state update.
Useful for connections that operate off of futures, or otherwise require synchronization.
Returns: The resolved environment state update.
Note: This function should be implemented by a derived class.
Returns: FTrainingStateUpdate *
Attributes: inline
, virtual
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 122, column 30)
SubmitPostResetState
inline virtual void SubmitPostResetState(const FTrainingState &States)
Submit the initial state of the environment after a reset to the other end of the connector.
Note: This function should be implemented by a derived class.
Parameters:
States
(const FTrainingState &
) – [in] The states to submit.
Attributes: inline
, virtual
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 129, column 14)
UpdateConnectorStatus
void UpdateConnectorStatus(const FTrainingStateUpdate &StateUpdate)
Update the connector status based on a state update.
Parameters:
StateUpdate
(const FTrainingStateUpdate &
) – [in] The state update to base the new status on.
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 135, column 6)
Implementation: Schola/Source/Schola/Private/GymConnectors/AbstractGymConnector.cpp
(lines 110-122)
UpdateConnectorStatus
void UpdateConnectorStatus()
Update the connector status based on the last state update.
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 140, column 6)
Implementation: Schola/Source/Schola/Private/GymConnectors/AbstractGymConnector.cpp
(lines 124-127)
Enable
inline virtual void Enable()
Enable the connector.
Useful for multistage setup as it is called after init.
Note: This function should be implemented by a derived class.
Attributes: inline
, virtual
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 146, column 14)
CheckForStart
inline virtual bool CheckForStart()
Check if the connector is ready to start.
Returns: True if the connector is ready to start.
Note: This function should be implemented by a derived class.
Returns: bool
Attributes: inline
, virtual
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 153, column 14)
GetCurrentStateUpdate
inline virtual FTrainingStateUpdate * GetCurrentStateUpdate()
Get the latest state update.
Returns: The last state update.
Returns: FTrainingStateUpdate *
Attributes: inline
, virtual
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 159, column 30)
IsRunning
inline bool IsRunning()
Get if the connector is running.
Returns: True if the connector is running.
Returns: bool
Attributes: inline
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 165, column 6)
IsNotStarted
inline bool IsNotStarted()
Get if the connector is closed.
Returns: True if the connector is closed.
Returns: bool
Attributes: inline
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 171, column 6)
CollectEnvironments
virtual void CollectEnvironments() override
Collect all the EnvironmentManagers in the simulation.
Attributes: virtual
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 176, column 6)
Implementation: Schola/Source/Schola/Private/GymConnectors/AbstractGymConnector.cpp
(lines 60-70)
RegisterEnvironment
void RegisterEnvironment(AAbstractScholaEnvironment *Env)
Register an environment with the subsystem so that it can be controlled by the subsystem.
Parameters:
Env
(AAbstractScholaEnvironment *
) – [in] A pointer to the environment to be registered.
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 182, column 6)
Implementation: Schola/Source/Schola/Private/GymConnectors/AbstractGymConnector.cpp
(lines 72-80)
Public Members:
FTrainingStateUpdate * CurrentStateUpdate
FTrainingStateUpdate * CurrentStateUpdate
The current state update from the environments.
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 44, column 22)
FConnectorStartedDelegate OnConnectorStarted
FConnectorStartedDelegate OnConnectorStarted
Delegate for when the connector starts.
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 47, column 27)
FConnectorClosedDelegate OnConnectorClosed
FConnectorClosedDelegate OnConnectorClosed
Delegate for when the connector closes.
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 50, column 27)
FConnectorErrorDelegate OnConnectorError
FConnectorErrorDelegate OnConnectorError
Delegate for when the connector encounters an error.
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 53, column 26)
EConnectorStatus Status
EConnectorStatus Status = = EConnectorStatus::Running
The status of the connector.
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 57, column 18)
TArray<AAbstractScholaEnvironment *> Environments
TArray<AAbstractScholaEnvironment *> Environments = = TArray<AAbstractScholaEnvironment*>()
The environments that are currently being trained.
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 61, column 8)
FTrainingState TrainingState
FTrainingState TrainingState = = FTrainingState()
The states of the environments that are currently being trained.
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 65, column 16)
FTrainingDefinition TrainingDefinition
FTrainingDefinition TrainingDefinition = = FTrainingDefinition()
The shared training definition for the environments that will be trained.
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 69, column 21)
Used By: UExternalGymConnector, UScholaManagerSubsystem, UScholaManagerSubsystemSettings
Source: Schola/Source/Schola/Public/GymConnectors/AbstractGymConnector.h
(line 38, column 1)