XmlOutput.h

Go to the documentation of this file.
00001 /*$$FILE$$*/
00002 /*$$VERSION$$*/
00003 /*$$DATE$$*/
00004 /*$$LICENSE$$*/
00005 
00006 
00014 #ifndef XMLOUTPUT_H
00015 #define XMLOUTPUT_H
00016 
00017 
00018 #include <string>
00019 #include <vector>
00020 #include <ostream>
00021 
00022 #include "DictObjFile.h"
00023 #include "DictObjCont.h"
00024 #include "SchemaDataInfo.h"
00025 #include "SchemaParentChild.h"
00026 #include "Db.h"
00027 #include "DbOutput.h"
00028 
00029 
00038 class XmlOutput : public DbOutput
00039 {
00040   public:
00041     XmlOutput(Db& db, const std::string& dictObjFileName,
00042       const std::string& dictName,
00043       const std::string& ns = std::string());
00044     virtual ~XmlOutput();
00045 
00046     void WriteSchema(const std::string& path = std::string());
00047     void WriteData(Block& block, const std::string& path = std::string());
00048 
00049   protected:
00050     void _WriteTable(std::ostream& io, ISTable* tIn,
00051       std::vector<unsigned int>& widths,
00052       const bool reCalcWidth = false,
00053       const std::vector<eTypeCode>& typeCodes =
00054         std::vector<eTypeCode> (0));
00055 
00056   private:
00057     static const std::string _BASE_SCHEMA_FILE;
00058 
00059     std::string _ns;
00060 
00061     SchemaDataInfo* _schemaDataInfoP;
00062     DictParentChild* _dictParentChildP;
00063 
00064     DictObjFile* _dictObjFileP;
00065     DictObjCont* _dictObjContP;
00066 };
00067 
00068 #endif

Generated on Thu Oct 6 10:15:51 2011 for db-loader-v4.1.0 by  doxygen 1.4.7