1
/***************************************************************************
4
begin : Mon Apr 21 2008
5
copyright : (C) 2008 by gruntster
6
***************************************************************************/
8
/***************************************************************************
10
* This program is free software; you can redistribute it and/or modify *
11
* it under the terms of the GNU General Public License as published by *
12
* the Free Software Foundation; either version 2 of the License, or *
13
* (at your option) any later version. *
15
***************************************************************************/
17
#ifndef PluginOptions_h
18
#define PluginOptions_h
23
#include "ADM_vidEnc_plugin.h"
26
#include "PluginXmlOptions.h"
31
PLUGIN_CONFIG_DEFAULT,
36
class PluginOptions : public PluginXmlOptions
39
vidEncOptions _encodeOptions;
40
unsigned int _defaultEncodeMode;
41
int _defaultEncodeModeParameter;
43
char *_tagPrefix, *_configTagRoot, *_optionsTagRoot;
45
char *_configurationName;
46
PluginConfigType _configurationType;
48
virtual void cleanUp(void);
49
virtual void setEncodeOptionsToDefaults(void);
50
virtual void parseEncodeOptions(xmlNode *node, vidEncOptions *encodeOptions);
51
virtual void parsePresetConfiguration(xmlNode *node);
54
PluginOptions(const char* tagPrefix, const char* schemaFile, unsigned int defaultEncodeMode, int defaultEncodeModeParameter);
57
virtual vidEncOptions* getEncodeOptions(void);
58
virtual void setEncodeOptions(vidEncOptions* encodeOptions);
60
virtual void reset(void);
61
virtual const char* getSchemaFile();
62
virtual const char* getConfigTagRoot();
63
virtual const char* getOptionsTagRoot();
65
virtual void getPresetConfiguration(char** configurationName, PluginConfigType *configurationType);
66
virtual void setPresetConfiguration(const char* configurationName, PluginConfigType configurationType);
67
virtual void clearPresetConfiguration(void);
68
virtual bool loadPresetConfiguration(void);
70
virtual void addOptionsToXml(xmlNodePtr xmlNodeRoot) = 0;
71
virtual void parseOptions(xmlNode *node) = 0;
73
virtual char* toXml(PluginXmlType xmlType);
74
virtual int fromXml(const char *xml, PluginXmlType xmlType);
76
static char* getUserConfigDirectory(void);
77
static char* getSystemConfigDirectory(void);