using System;
using System.Text;
namespace Cobilas.IO.Atlf {
/// Base class for all ATLF classes.
public abstract class ATLFBase : IDisposable {
/// The number of ATLF nodes stored.
public abstract long NodeCount { get; }
/// Determines whether text should be indented.
public abstract bool Indent { get; set; }
/// Sets or returns the encoding used.
public abstract Encoding Encoding { get; set; }
/// Represents the version that the ATLF object is using.
public abstract string TargetVersion { get; set; }
/// Indicate whether the flow has been closed.
public abstract bool Closed { get; protected set; }
///
/// This property is used to close the workflow automatically.
/// This property should be used in cases where you directly access a stream.
/// Example: when a flow is called using the .Open(string) method.
///
protected abstract bool CloseFlow { get; set;}
/// Where ATLF nodes are stored.
protected abstract ATLFNode[] Nodes { get; set; }
/// Sets or returns the current stream.
protected abstract MarshalByRefObject RefObject { get; set; }
internal static string def_version = "std:1.0";
/// Allows you to close the current flow.
public abstract void Close();
/// Allows you to discard the current stream.
public abstract void Dispose();
}
}