LoadSettingsFromStream Method (original) (raw)
Summary
Loads settings from a stream.
Syntax
Parameters
sourceStream
The stream containing the saved settings to load.
flags
The settings flags specifying which settings to load. See the CaptureSettings enumeration for settings options.
Example
using Leadtools;
using Leadtools.Multimedia;
using LeadtoolsMultimediaExamples.Fixtures;
public bool _result = false;
public CaptureCtrlForm _form = new CaptureCtrlForm();
public CaptureCtrl _capturectrl;
public string _streamSettings = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_ObjectSettingsExample_Stream.xml");
public string _fileSettings = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_ObjectSettingsExample.xml");
public void ObjectSettingsExample()
{
// reference the play control
_capturectrl = _form.CaptureCtrl;
// output file
string outFile = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_ObjectSettingsExample.avi");
try
{
Processor pVideoDizzy = _capturectrl.VideoProcessors.EFXDizzy;
// set a video processor
_capturectrl.SelectedVideoProcessors.Add(pVideoDizzy);
// save the settings to a file
if (SaveFileSettings())
{
// now clear the selected processors again
_capturectrl.SelectedVideoProcessors.Clear();
// check whether a stream file exists
if (File.Exists(_fileSettings))
{
// load the saved settings from a file
// and check whether the processor is selected again
LoadFileSettings();
// set the result
_result = _capturectrl.SelectedVideoProcessors.Contains(pVideoDizzy);
}
}
// save the settings to a stream
if (SaveStreamSettings())
{
// now clear the selected processors again
_capturectrl.SelectedVideoProcessors.Clear();
// check whether a stream file exists
if (File.Exists(_streamSettings))
{
// load the saved settings from a stream
// and check whether the processor is selected again
LoadStreamSettings();
// set the result
_result &= _capturectrl.SelectedVideoProcessors.Contains(pVideoDizzy);
}
}
}
catch (Exception)
{
_result = false;
}
}
private void LoadFileSettings()
{
_capturectrl.LoadSettingsFromFile(_fileSettings, CaptureSettings.Processors);
}
private bool SaveFileSettings()
{
// check whether we can save the processors settings
if (_capturectrl.CanSaveObjectSettings(CaptureSettings.Processors))
{
_capturectrl.SaveSettingsToFile(_fileSettings, CaptureSettings.Processors);
return true;
}
return false;
}
private void LoadStreamSettings()
{
Stream settings = new StreamReader(_streamSettings).BaseStream;
_capturectrl.LoadSettingsFromStream(settings, CaptureSettings.Processors);
settings.Close();
}
private bool SaveStreamSettings()
{
// check whether we can save the processors settings
if (_capturectrl.CanSaveObjectSettings(CaptureSettings.Processors))
{
Stream settings = new StreamWriter(_streamSettings, false).BaseStream;
_capturectrl.SaveSettingsToStream(settings, CaptureSettings.Processors);
settings.Close();
return true;
}
return false;
}
static class LEAD_VARS
{
public const string MediaDir = @"C:\LEADTOOLS23\Media";
}