ConstantWriter
ConstantWriter is a writer that always writes the same value or reference.
// Create constant writer
IWriterBase<Avalanche.Void, string> constantWriter =
(IWriterBase<Avalanche.Void, string>)
ConstantWriter.Create(typeof(Avalanche.Void), typeof(string), "Hello");
// Read constant
string str = constantWriter.Read();
// Print
WriteLine(str);
ConstantWriterRequest(fromType, toType, value) is request for ConstantWriter.
// Create request
IRequest request = new ConstantWriterRequest(typeof(Avalanche.Void), typeof(string), "Hello");
// Create constant writer
IWriterBase<Avalanche.Void, string> constantWriter =
Services.Create(Avalanche.Accessor.Dto.Module.Instance, CachePolicies.Default).GetRequired<IRequest, IWriterBase<Avalanche.Void, string>>(request);
// Read constant
string str = constantWriter.Read();
// Print
WriteLine(str);
Full Example
Full example
using Avalanche.Accessor;
using Avalanche.Service;
using Avalanche.Writer;
using static System.Console;
class constantwriter
{
public static void Run()
{
{
// <01>
// Create constant writer
IWriterBase<Avalanche.Void, string> constantWriter =
(IWriterBase<Avalanche.Void, string>)
ConstantWriter.Create(typeof(Avalanche.Void), typeof(string), "Hello");
// Read constant
string str = constantWriter.Read();
// Print
WriteLine(str);
// </01>
}
{
// <02>
// Create request
IRequest request = new ConstantWriterRequest(typeof(Avalanche.Void), typeof(string), "Hello");
// Create constant writer
IWriterBase<Avalanche.Void, string> constantWriter =
Services.Create(Avalanche.Accessor.Dto.Module.Instance, CachePolicies.Default).GetRequired<IRequest, IWriterBase<Avalanche.Void, string>>(request);
// Read constant
string str = constantWriter.Read();
// Print
WriteLine(str);
// </02>
}
{
// <03>
// Create request
IRequest request = new ConstantWriterRequest(typeof(Avalanche.Void), typeof(string), "Hello");
// Create constant writer
IWriterBase<Avalanche.Void, string> constantWriter =
Services.Create(Avalanche.Accessor.Dto.Module.Instance, CachePolicies.Default).GetRequired<IRequest, IWriterBase<Avalanche.Void, string>>(request);
// Read constant
string str = constantWriter.Read();
// Print
WriteLine(str);
// </03>
}
{
// <04>
// Create request
IRequest request = new ConstantWriterRequest(typeof(Avalanche.Void), typeof(object), null);
// Create constant writer
IWriterBase<Avalanche.Void, object> constantWriter =
Services.Create(Avalanche.Accessor.Dto.Module.Instance, CachePolicies.Default).GetRequired<IRequest, IWriterBase<Avalanche.Void, object>>(request);
// Read constant
object str = constantWriter.Read();
// Print
WriteLine(str);
// </04>
}
{
// <05>
// Create request
IRequest request = new ConstantWriterRequest(typeof(Avalanche.Void), typeof(string), null);
// Create constant writer
IWriterBase<Avalanche.Void, string> constantWriter =
Services.Create(Avalanche.Accessor.Dto.Module.Instance, CachePolicies.Default).GetRequired<IRequest, IWriterBase<Avalanche.Void, string>>(request);
// Read constant
string str = constantWriter.Read();
// Print
WriteLine(str);
// </05>
}
}
}