Allows for altering scenes in nodes. More...
#include <VisualVersioningSubsystem.h>
Classes | |
struct | FScenarioId |
Public Member Functions | |
void | AlterDataTable (const UDataTable *DataTable, const FName &SceneName, const FVisualScenarioInfo &Version) |
Alters scene in the data table by provided version. | |
template<typename T = FVisualScenarioInfo, typename... V> | |
void | AlterDataTable (const UDataTable *DataTable, const FName &SceneName, V T::*... Members, const V &... Values) |
Template version. | |
template<typename T = FVisualScenarioInfo, typename... V> | |
void | AlterDataTable (FScenario *Scene, V T::*... Members, const V &... Values) |
Template version. | |
void | Checkout (FScenario *const Scene) const |
Switches scene to an older version. | |
void | CheckoutAll (UDataTable *const DataTable) const |
Switches all scenes in the data table to an older version. | |
virtual void | SerializeSubsystem_Experimental (FArchive &Ar) |
Not ready for production code. | |
virtual void | Deinitialize () override |
Discards all versions bringing scenes to original state. | |
Private Member Functions | |
FScenario * | GetSceneChecked (const UDataTable *DataTable, const FName &SceneName) const |
Will trigger assertion for invalid data table or name. | |
FScenario * | GetSceneChecked (const FScenarioId &Id) const |
Will trigger assertion for invalid scenario id. | |
Private Attributes | |
TMultiMap< FScenarioId, FVisualScenarioInfo > | Versions |
Map of scenes to all versions of their information. | |
Allows for altering scenes in nodes.
All versions are applied and discared at runtime.
void UVisualVersioningSubsystem::AlterDataTable | ( | const UDataTable * | DataTable, |
const FName & | SceneName, | ||
const FVisualScenarioInfo & | Version ) |
Alters scene in the data table by provided version.
DataTable | data table that contains desired scene |
SceneName | row name of the desired scene |
Version | altered scene |
|
inline |
Template version.
|
inline |
Template version.
void UVisualVersioningSubsystem::Checkout | ( | FScenario *const | Scene | ) | const |
Switches scene to an older version.
Has no effect for scene not altered by this subsystem.
Scene | scene to revert back to the previous version |
void UVisualVersioningSubsystem::CheckoutAll | ( | UDataTable *const | DataTable | ) | const |
Switches all scenes in the data table to an older version.
Has no effect for scenes not altered by this subsystem.
DataTable | node which scenes will be reverted to previous version |
|
overridevirtual |
Discards all versions bringing scenes to original state.
Called when local player is destroyed.
|
private |
Will trigger assertion for invalid scenario id.
Id | identity of requested scene |
|
private |
Will trigger assertion for invalid data table or name.
DataTable | data table that contains desired scene |
SceneName | row name of desired scene |
|
virtual |
Not ready for production code.
Ar | archive to serialize this subsystem |