The core header files in the Source/Public folder define the core structure and functionality of the Cavrnus Spatial Connector plugin for Unreal Engine.
General Notes:
The CavrnusFunctionLibrary is the primary interface for Blueprint users to interact with the plugin.
Purpose: This file defines the UCavrnusConnectorSettings class, which stores the configuration settings for the plugin.
Functions:
PostInitProperties: Initialization function for the Connector.
GetRelayNetOptionalParameters: Generates a string representing the verbose parameter list for CavrnusRelayNet.
PostEditChangeProperty: Called when an edit is made to the settings (Available only in the editor)
Key Elements:
AutoStartConnector: Determines whether the connector should automatically start.
RelayNetPort, RelayNetIPAddress, RelayNetExecutableRelativeLocation: Settings for the RelayNet executable, the foundation for Cavrnus real-time collaboration.
RelayNetSilent, RelayNetVerboseLogging, RelayNetLogOutputToFile: Options for controlling the behavior and logging of RelayNet.
Purpose: This file defines the UCavrnusSpatialConnectorSubSystem and UCavrnusSpatialConnectorSubSystemProxy classes, which manage the lifecycle and interactions with the Cavrnus Spatial Connector.
Key Elements:
UIManager: A class for managing UI widgets within the Cavrnus system.
Functions for authentication, space joining, and handling callbacks.
Purpose: This file defines the UCavrnusPropertiesContainer component, which is attached to actors to manage property containers within the Cavrnus system. Containers are a way to uniquely identify synchronized values in the Journal of a Cavrnus Space.
Functions:
InitializeComponent: Called when the component is initialized, allowing for custom initialization logic..
Key Elements:
ContainerName: This property stores the name of the container, which can be used to identify it within the Cavrnus system.
Purpose: This is the main Blueprint function library for interacting with the Cavrnus Spatial Connector. It provides a wide range of static utility functions for authentication, space management, property manipulation, permissions, user interactions, and more.