clsPtree.cpp 2.8 KB
/**************************************************************************
* file:              clsPtree.cpp

* Author:            qingxiongf
* Date:              2021-12-29 16:52:23
* Email:             qingxiongf@chinadci.com
* copyright:         广州城市信息研究所有限公司
***************************************************************************/


#include "clsPtree.h"
#include <stdarg.h>
#include <string.h>

namespace DmapCore_30
{
    void clsPtree::ParseEnum(const char *name, boost::property_tree::ptree& pt, int v, string a1, string a2 , string a3, string a4, string a5, string a6, string a7, string a8, string a9, string a10, string a11, string a12, string a13, string a14, string a15, string a16)
    {

        string vstring = a1;
        switch (v)
        {
        case 0: vstring = a1; break;
        case 1: vstring = a2; break;
        case 2: vstring = a3; break;
        case 3: vstring = a4; break;
        case 4: vstring = a5; break;
        case 5: vstring = a6; break;
        case 6: vstring = a7; break;
        case 7: vstring = a8; break;
        case 8: vstring = a9; break;
        case 9: vstring = a10; break;
        case 10: vstring = a11; break;
        case 11: vstring = a12; break;
        case 12: vstring = a13; break;
        case 13: vstring = a14; break;
        case 14: vstring = a15; break;
        case 15: vstring = a16; break;
        }
        std::string ptname = "<xmlattr>.";
        ptname += name;
        pt.add(ptname, vstring);
       
    }

     void  clsPtree::PtreeAttrParse(const char* name, boost::property_tree::ptree& pt, string &v)
     {
        std::string ptname = "<xmlattr>.";
        ptname += name;
        pt.add(ptname, v);
     }

      void  clsPtree::PtreeAttrParse(const char* name, boost::property_tree::ptree& pt, bool &v)
     {
        std::string ptname = "<xmlattr>.";
        ptname += name;
        pt.add(ptname,  v?"true":"false");
     }

 void  clsPtree::PtreeAttrParse(const char* name, boost::property_tree::ptree& pt, double &v)
     {
        std::string ptname = "<xmlattr>.";
        ptname += name;
        pt.add(ptname, v);
     }

      void  clsPtree::PtreeAttrParse(const char* name, boost::property_tree::ptree& pt, int &v)
     {
        std::string ptname = "<xmlattr>.";
        ptname += name;
        pt.add(ptname, v);
     }

      void  clsPtree::PtreeAttrParse(const char* name, boost::property_tree::ptree& pt, long &v)
     {
        std::string ptname = "<xmlattr>.";
        ptname += name;
        pt.add(ptname, v);
     }

     


     void clsPtree::PtreeAttrParseColor(const char* name,const char*name2, boost::property_tree::ptree& pt,unsigned int& value)
	{
		string sColor = "", sTransparency = "";
		std::string ptname = "<xmlattr>.";
        pt.add(ptname + name, sColor);
        pt.add(ptname + name2, sTransparency);
		
	}

} // namespace DmapDll