GenApi  3.5.1
INodeMapDyn.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------------
2 // (c) 2006 by Basler Vision Technologies
3 // Author: Fritz Dierks
4 //
5 // License: This file is published under the license of the EMVA GenICam Standard Group.
6 // A text file describing the legal terms is included in your installation as 'GenICam_license.pdf'.
7 // If for some reason you are missing this file please contact the EMVA or visit the website
8 // (http://www.genicam.org) for a full copy.
9 //
10 // THIS SOFTWARE IS PROVIDED BY THE EMVA GENICAM STANDARD GROUP "AS IS"
11 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
12 // THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
13 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE EMVA GENICAM STANDARD GROUP
14 // OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
15 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
16 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
17 // OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
18 // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
19 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
20 // POSSIBILITY OF SUCH DAMAGE.
21 //
22 //-----------------------------------------------------------------------------
29 #ifndef GENAPI_INODEMAPDYN_H
30 #define GENAPI_INODEMAPDYN_H
31 
32 #include "Base/GCBase.h"
33 #include "INodeMap.h"
34 
35 #ifdef _MSC_VER
36 # pragma warning ( push )
37 # pragma warning ( disable : 4251 ) // XXX needs to have dll-interface to be used by clients of class YYY
38 #endif
39 
40 namespace GENAPI_NAMESPACE
41 {
42 
43  //*************************************************************
44  // INodeMap interface
45  //*************************************************************
46 
51  GENICAM_INTERFACE GENAPI_DECL_ABSTRACT INodeMapDyn : virtual public INodeMap
52  {
54  virtual void ClearAllNodes() = 0;
55 
57  virtual void LoadXMLFromFile(const GENICAM_NAMESPACE::gcstring& FileName) = 0;
58 
60  virtual void LoadXMLFromFileInject(const GENICAM_NAMESPACE::gcstring& TargetFileName, const GENICAM_NAMESPACE::gcstring& InjectFileName) = 0;
61 
63  virtual void LoadXMLFromString(const GENICAM_NAMESPACE::gcstring& XMLData) = 0;
64 
66  virtual void LoadXMLFromStringInject(const GENICAM_NAMESPACE::gcstring& TargetXMLData, const GENICAM_NAMESPACE::gcstring& InjectXMLData) = 0;
67 
69  virtual void PreprocessXMLFromFile(
70  const GENICAM_NAMESPACE::gcstring& XMLFileName,
71  const GENICAM_NAMESPACE::gcstring& StyleSheetFileName,
72  const GENICAM_NAMESPACE::gcstring& OutputFileName,
74  const uint32_t XMLValidation = xvDefault
75  ) = 0;
76 
78  virtual void MergeXMLFiles(
79  const GENICAM_NAMESPACE::gcstring& TargetFileName,
80  const GENICAM_NAMESPACE::gcstring& InjectedFileName,
81  const GENICAM_NAMESPACE::gcstring& OutputFileName
82  ) = 0;
83 
85  virtual void ExtractIndependentSubtree(
86  const GENICAM_NAMESPACE::gcstring& XMLData,
87  const GENICAM_NAMESPACE::gcstring& InjectXMLData,
88  const GENICAM_NAMESPACE::gcstring& SubTreeRootNodeName,
89  GENICAM_NAMESPACE::gcstring& ExtractedSubtree
90  ) = 0;
91 
93 
97  virtual void GetSupportedSchemaVersions( GENICAM_NAMESPACE::gcstring_vector &SchemaVersions ) = 0;
98 
100  virtual void LoadXMLFromZIPFile(const GENICAM_NAMESPACE::gcstring & ZipFileName) = 0;
101 
103  virtual void LoadXMLFromZIPData(const void* zipData, size_t zipSize) = 0;
104 
106  virtual void PreprocessXMLFromZIPFile(
107  const GENICAM_NAMESPACE::gcstring& XMLFileName,
108  const GENICAM_NAMESPACE::gcstring& StyleSheetFileName,
109  const GENICAM_NAMESPACE::gcstring& OutputFileName,
111  const uint32_t XMLValidation = xvDefault
112  ) = 0;
113  };
114 
115 }
116 
117 #ifdef _MSC_VER
118 # pragma warning ( pop )
119 #endif
120 
121 #endif // ifndef GENAPI_INODEMAPDYN_H
virtual void LoadXMLFromFileInject(const GENICAM_NAMESPACE::gcstring &TargetFileName, const GENICAM_NAMESPACE::gcstring &InjectFileName)=0
Loads an XML from a file with injection.
checks performed if nothing else is said
Definition: Types.h:169
virtual void LoadXMLFromString(const GENICAM_NAMESPACE::gcstring &XMLData)=0
Loads an XML from a string.
virtual void LoadXMLFromFile(const GENICAM_NAMESPACE::gcstring &FileName)=0
Loads an XML from a file.
virtual void LoadXMLFromZIPFile(const GENICAM_NAMESPACE::gcstring &ZipFileName)=0
Loads an XML from a ZIP file.
Common GenICam base include file.
virtual void PreprocessXMLFromZIPFile(const GENICAM_NAMESPACE::gcstring &XMLFileName, const GENICAM_NAMESPACE::gcstring &StyleSheetFileName, const GENICAM_NAMESPACE::gcstring &OutputFileName, const uint32_t XMLValidation=xvDefault)=0
Loads a Zipped XML, checks it for correctness, pre-processes it, caches it, and optionally applies a ...
virtual void PreprocessXMLFromFile(const GENICAM_NAMESPACE::gcstring &XMLFileName, const GENICAM_NAMESPACE::gcstring &StyleSheetFileName, const GENICAM_NAMESPACE::gcstring &OutputFileName, const uint32_t XMLValidation=xvDefault)=0
Loads an XML, checks it for correctness, pre-processes it, caches it, and optionally applies a style ...
virtual void GetSupportedSchemaVersions(GENICAM_NAMESPACE::gcstring_vector &SchemaVersions)=0
Gets a list of supported schema versions.
Definition of interface INodeMap.
virtual void MergeXMLFiles(const GENICAM_NAMESPACE::gcstring &TargetFileName, const GENICAM_NAMESPACE::gcstring &InjectedFileName, const GENICAM_NAMESPACE::gcstring &OutputFileName)=0
Injects an XML file into a target file.
GENICAM_INTERFACE INodeMap
Interface to access the node map.
Definition: INode.h:50
GENICAM_INTERFACE GENAPI_DECL_ABSTRACT INodeMapDyn
Interface to access the node map.
Definition: INodeMapDyn.h:54
A string class which is a clone of std::string.
Definition: GCString.h:50
virtual void LoadXMLFromStringInject(const GENICAM_NAMESPACE::gcstring &TargetXMLData, const GENICAM_NAMESPACE::gcstring &InjectXMLData)=0
Loads an XML from a string with injection.
virtual void LoadXMLFromZIPData(const void *zipData, size_t zipSize)=0
Loads an XML from a ZIP data buffer.
Definition: ChunkAdapter.h:37
virtual void ExtractIndependentSubtree(const GENICAM_NAMESPACE::gcstring &XMLData, const GENICAM_NAMESPACE::gcstring &InjectXMLData, const GENICAM_NAMESPACE::gcstring &SubTreeRootNodeName, GENICAM_NAMESPACE::gcstring &ExtractedSubtree)=0
Extract independent subtree.