Show / Hide Table of Contents

Class BrainSerializer<TState, TBot, TAction, TBrain>

A helper class for loading and saving bot brains.

Inheritance
object
ResourceHelper
BrainSerializerBase<TState, TBot, TAction>
BrainSerializer<TState, TBot, TAction, TBrain>
OvermindSerializer<T>
TestBrainSerializer
TestBrainSerializer
Implements
IBrainSerializer
ITitleResourceHelper
IResourceHelper
IMetadataAccess
Inherited Members
BrainSerializerBase<TState, TBot, TAction>.DefaultBotBrainOutputFolder
BrainSerializerBase<TState, TBot, TAction>.Logger
BrainSerializerBase<TState, TBot, TAction>.Services
BrainSerializerBase<TState, TBot, TAction>.TitleOutputFolder
BrainSerializerBase<TState, TBot, TAction>.BotBrainFileExtension
BrainSerializerBase<TState, TBot, TAction>.BrainsFolder
BrainSerializerBase<TState, TBot, TAction>.BrainTemplatesFolderPath
BrainSerializerBase<TState, TBot, TAction>.BrainDefaultsFilePath
BrainSerializerBase<TState, TBot, TAction>.ParameterNames
BrainSerializerBase<TState, TBot, TAction>.BrainCoreAssembly
BrainSerializerBase<TState, TBot, TAction>.JsonConverters
BrainSerializerBase<TState, TBot, TAction>.BrainAssembly
BrainSerializerBase<TState, TBot, TAction>.Initialize()
BrainSerializerBase<TState, TBot, TAction>.GetTitleResourcePath(string)
BrainSerializerBase<TState, TBot, TAction>.IsReservedBrainFilename(string)
BrainSerializerBase<TState, TBot, TAction>.DeserializeBrain(string)
BrainSerializerBase<TState, TBot, TAction>.DeserializeBrainFile(string)
BrainSerializerBase<TState, TBot, TAction>.SerializeBrain(IBotBrain, bool)
BrainSerializerBase<TState, TBot, TAction>.LoadDefaultBrainParameters()
BrainSerializerBase<TState, TBot, TAction>.LoadBrain(string)
BrainSerializerBase<TState, TBot, TAction>.GetParameterMetadata(string)
BrainSerializerBase<TState, TBot, TAction>.RegisterBrainAssemblyTypes(Assembly)
BrainSerializerBase<TState, TBot, TAction>.GetJsonConverters<TBrain>()
BrainSerializerBase<TState, TBot, TAction>.LoadParameterMetadata()
BrainSerializerBase<TState, TBot, TAction>.WriteCoreResources()
BrainSerializerBase<TState, TBot, TAction>.WriteTitleResources()
BrainSerializerBase<TState, TBot, TAction>.GetBrainFilePath(string)
BrainSerializerBase<TState, TBot, TAction>.GetDefaultSerializerSettings(bool)
BrainSerializerBase<TState, TBot, TAction>.GetSerializerSettings(bool)
BrainSerializerBase<TState, TBot, TAction>.GetDeserializerSettings(bool)
BrainSerializerBase<TState, TBot, TAction>.LoadFileItem<T>(string, Func<string, T>, string)
BrainSerializerBase<TState, TBot, TAction>.LoadTemplates<T>(string, JsonSerializerSettings, Func<string, bool>)
ResourceHelper.DefaultParametersFilename
ResourceHelper.JsonFileExtension
ResourceHelper.BaseOutputFolder
ResourceHelper.GetParameters(Assembly, string, string)
ResourceHelper.GetResourcePath(string)
ResourceHelper.WriteResourcesToDisk(Assembly, string, string, Func<string, bool>)
ResourceHelper.WriteNewResourcesToDisk(Assembly, string, string)
ResourceHelper.SafeCombinePath(string, string)
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: Microsoft.XboxStudios.BotBrain.Composition
Assembly: BotBrain.Core.dll
Syntax
public class BrainSerializer<TState, TBot, TAction, TBrain> : BrainSerializerBase<TState, TBot, TAction>, IBrainSerializer, ITitleResourceHelper, IResourceHelper, IMetadataAccess where TBot : IAutomatedBot<TAction> where TBrain : IBotBrain
Type Parameters
Name Description
TState

A title-specific state object.

TBot

A title-specific bot object that implements IAutomatedBot<TAction>.

TAction

The title-specific bot action.

TBrain

The title-specific brain that implements IBotBrain.

Remarks

Initializes a new instance of the BrainSerializer<TState, TBot, TAction, TBrain> class.

Constructors

View Source

BrainSerializer(IServiceProvider, ILogger<BrainSerializer<TState, TBot, TAction, TBrain>>?, string?, Assembly?)

A helper class for loading and saving bot brains.

Declaration
public BrainSerializer(IServiceProvider services, ILogger<BrainSerializer<TState, TBot, TAction, TBrain>>? logger = null, string? outputFolder = null, Assembly? brainAssembly = null)
Parameters
Type Name Description
IServiceProvider services

The service provider used for construction.

ILogger<BrainSerializer<TState, TBot, TAction, TBrain>> logger

The logger to use.

string outputFolder

The folder path containing brain resources.

Assembly brainAssembly

The assembly containing brain types to register and resources to extract.

Remarks

Initializes a new instance of the BrainSerializer<TState, TBot, TAction, TBrain> class.

Properties

View Source

JsonConverters

Gets the JSON converters for serializing and deserializing bot brains.

Declaration
protected override IEnumerable<JsonConverter> JsonConverters { get; }
Property Value
Type Description
IEnumerable<JsonConverter>
Overrides
BrainSerializerBase<TState, TBot, TAction>.JsonConverters

Methods

View Source

DeserializeBrain(string)

Deserializes a brain from a string.

Declaration
public override IBotBrain DeserializeBrain(string contents)
Parameters
Type Name Description
string contents

A string representation of a brain.

Returns
Type Description
IBotBrain

The brain.

Overrides
BrainSerializerBase<TState, TBot, TAction>.DeserializeBrain(string)

Implements

IBrainSerializer
ITitleResourceHelper
IResourceHelper
IMetadataAccess
  • View Source
In this article
Back to top Generated by DocFX