Parameter System - Unity3D 4.2
The parameter system can be used for parameter management. It is composed out of the ParameterArchive and the ParameterEditor.
The ParameterArchive consists out of implementations of the IParameterMap interface. Each group and all of the contained parameters are identified by keys. It is possible to change the implementation of the IParameterMap that is used by the ParameterArchive by implementing and assigning the IParameterMapProvider interface.
Objects that implement the ParameterListener interface can register themselves as listeneres for groups which will be informed of any changes within the groups since the last distribution by calling the CallListeners function of the Archive.
The Parameterarchive supports binary- and xml-serialization as long as the parameters stored support them.
The ParameterEditor is the ingame interface for a ParameterArchive. It is based on the BaseWindow class of the window system.
It is necessary to provide the ParameterEditor with implementations of the abstract class BaseParameterType and the associated implementation of the abstract class EntryElement to enable it to represent the information of a parameter or provide an interface to modify them. The package contains implementations for the datatyp int, float, double, string and unknown which is used for any datatyp that has no BaseParameterType implementation associated.
The ParameterEditor loads and saves the ParameterArchive that it represents through two delegate functions.
Window System - Unity3D 4.2
The window system consits out the abstract class BaseWindow which encapsules the window functionality of Unity3D and its components. The window provides resizability in every direction, focus management between all BaseWindow implementations and ID management.
Console Commands - Unity3D 4.2
The package contains a simple console and the MessageServiceSystem.
The MessageServiceSystem consists out of the IMessageService interface and the MessageServiceManager.
An object that wants to get messages from the console needs to implement the IMessageService interface and register with a MessageServiceManager.
The MessageServiceManager can be assigned to the console. The console sends messages which it has identified as commands to the MessageServiceManager which identifies the required IMessageService through the given name. The message "/help services" is send to the service that is registered under the name "help" with the parameter "services".