using System;
namespace UnityEditor.Recorder
{
///
/// This class represents the different types of input that can receive frame data from a object.
///
///
public class RecorderInput : IDisposable
{
///
/// The settings of the Recorder input data.
/// These can be of type , ,
/// or .
///
public RecorderInputSettings settings { get; set; }
///
/// The finalizer of the class.
///
~RecorderInput()
{
Dispose(false);
}
///
/// Cleans up the Recorder input's resources.
///
public void Dispose()
{
Dispose(true);
}
///
/// Cleans up the Recorder input's resources.
///
/// This flag is True when the method is being called by a user's
/// method, otherwise it means that it has been called by a finalizer and you should only dispose of unmanaged
/// resources.
protected virtual void Dispose(bool disposing)
{
GC.SuppressFinalize(this);
}
protected internal virtual void SessionCreated(RecordingSession session) {}
protected internal virtual void BeginRecording(RecordingSession session) {}
protected internal virtual void NewFrameStarting(RecordingSession session) {}
internal virtual void SkipFrame(RecordingSession session) {}
protected internal virtual void NewFrameReady(RecordingSession session) {}
protected internal virtual void FrameDone(RecordingSession session) {}
protected internal virtual void EndRecording(RecordingSession session) {}
}
}