Engines extension
The engine is in charge of understanding and executing a tool-config and the plugins definied in it. It defines the workflow on how the tool-config should be executed and which type of store should be passed.
The engine should only be overriden for very advance users, as the provided standard_engine.py
is already meant to be flexible and deal with most of the tool-configs structures.
An engine should always inherit from the BaseEngine
which contains all the connections to establish communication and be executed by the Host
.
By default, named <usage>_engine.py
and located in the engines
folder.
Here is an example of a default standard engine extension for the framework:
# :coding: utf-8
# :copyright: Copyright (c) 2024 ftrack
from ftrack_framework_core.engine import BaseEngine
class StandardEngine(BaseEngine):
'''
StandardEngine class.
'''
name = 'standard_engine'
def get_store(self) -> dict:
return dict()