mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-06-04 14:22:43 -06:00
reorganizing repo
git-svn-id: svn://ultimatepp.org/upp/trunk@9206 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
parent
7d17505cfe
commit
e3e8d627f5
3840 changed files with 0 additions and 1161578 deletions
|
|
@ -1,154 +0,0 @@
|
|||
#include <Core/Core.h>
|
||||
|
||||
using namespace Upp;
|
||||
|
||||
Tuple2<int, String> mm[] = {
|
||||
{XML_DOC, "XML_DOC"},
|
||||
{XML_TAG, "XML_TAG"},
|
||||
{XML_END, "XML_END"},
|
||||
{XML_TEXT, "XML_TEXT"},
|
||||
{XML_DECL, "XML_DECL"},
|
||||
{XML_PI, "XML_PI"},
|
||||
{XML_COMMENT, "XML_COMMENT"},
|
||||
{XML_EOF, "XML_EOF"},
|
||||
};
|
||||
|
||||
VectorMap<String, int> count;
|
||||
|
||||
void MakeMap(VectorMap<String, int>& map, const XmlNode& n, const String& path, int& tag_count, int& other_count)
|
||||
{
|
||||
if(map.GetCount() > 1000)
|
||||
return;
|
||||
for(int i = 0; i < n.GetCount(); i++) {
|
||||
const Tuple2<int, String> *m = FindTuple(mm, __countof(mm), n[i].GetType());
|
||||
if(m) {
|
||||
count.GetAdd(m->b, 0)++;
|
||||
count.GetAdd(String(m->b) + ".len", 0) += n[i].GetText().GetCount();
|
||||
}
|
||||
if(n[i].IsTag()) {
|
||||
String np = path + "/" + n[i].GetTag();
|
||||
map.GetAdd(np, 0)++;
|
||||
MakeMap(map, n[i], np, tag_count, other_count);
|
||||
count.GetAdd("attr", 0) += n[i].GetAttrCount();
|
||||
}
|
||||
else
|
||||
map.GetAdd(path + ':' + (m ? m->b : "?"), 0)++;
|
||||
}
|
||||
}
|
||||
|
||||
void DumpMap(const XmlNode& n)
|
||||
{
|
||||
VectorMap<String, int> map;
|
||||
int tag_count = 0;
|
||||
int other_count = 0;
|
||||
MakeMap(map, n, String(), tag_count, other_count);
|
||||
SortByKey(map);
|
||||
RDUMPM(map);
|
||||
RDUMPM(count);
|
||||
}
|
||||
|
||||
//const char *xmlfile = "/home/cxl/20131117_ST_ZZSZ.xml";
|
||||
|
||||
namespace Upp {
|
||||
void *SysAllocRaw(size_t size, size_t reqsize);
|
||||
};
|
||||
|
||||
CONSOLE_APP_MAIN
|
||||
{
|
||||
StdLogSetup(LOG_COUT|LOG_FILE);
|
||||
|
||||
String xmlfile = GetHomeDirFile("ruian_file/20131201_ST_ZZSZ.xml");
|
||||
RLOG(MemoryProfile());
|
||||
{
|
||||
RTIMING("Parse with ignore and stream!");
|
||||
IgnoreXmlPaths ignore(
|
||||
"/vf:VymennyFormat/vf:Data/vf:AdresniMista/vf:AdresniMisto/ami:Geometrie;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:AdresniMista/vf:AdresniMisto/ami:GlobalniIdNavrhuZmeny;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:AdresniMista/vf:AdresniMisto/ami:IdTransakce;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:AdresniMista/vf:AdresniMisto/ami:PlatiOd;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:AdresniMista/vf:AdresniMisto/ami:VOKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:Parcely;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:Geometrie;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:IdentifikacniParcela;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:ZpusobyOchrany;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:DetailniTEA;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:DruhKonstrukceKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:GlobalniIdNavrhuZmeny;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:IdTransakce;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:PlatiOd;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:PocetBytu;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:PocetPodlazi;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:PodlahovaPlocha;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:PripojeniKanalizaceKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:PripojeniPlynKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:PripojeniVodovodKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:VybaveniVytahemKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:ZastavenaPlocha;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:ZpusobVytapeniKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:ZpusobVyuzitiKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:ObestavenyProstor;"
|
||||
);
|
||||
RLOG("-----------");
|
||||
RLOG("With ignore and stream!");
|
||||
XmlNode n = ParseXMLFile(xmlfile, ignore);
|
||||
RLOG(MemoryUsedKb() << " KB used -------");
|
||||
RLOG(MemoryProfile());
|
||||
DumpMap(n);
|
||||
}
|
||||
{
|
||||
RTIMING("Parse with ignore!");
|
||||
IgnoreXmlPaths ignore(
|
||||
"/vf:VymennyFormat/vf:Data/vf:AdresniMista/vf:AdresniMisto/ami:Geometrie;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:AdresniMista/vf:AdresniMisto/ami:GlobalniIdNavrhuZmeny;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:AdresniMista/vf:AdresniMisto/ami:IdTransakce;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:AdresniMista/vf:AdresniMisto/ami:PlatiOd;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:AdresniMista/vf:AdresniMisto/ami:VOKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:Parcely;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:Geometrie;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:IdentifikacniParcela;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:ZpusobyOchrany;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:DetailniTEA;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:DruhKonstrukceKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:GlobalniIdNavrhuZmeny;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:IdTransakce;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:PlatiOd;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:PocetBytu;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:PocetPodlazi;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:PodlahovaPlocha;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:PripojeniKanalizaceKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:PripojeniPlynKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:PripojeniVodovodKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:VybaveniVytahemKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:ZastavenaPlocha;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:ZpusobVytapeniKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:ZpusobVyuzitiKod;"
|
||||
"/vf:VymennyFormat/vf:Data/vf:StavebniObjekty/vf:StavebniObjekt/soi:ObestavenyProstor;"
|
||||
);
|
||||
XmlNode n = ParseXML(LoadFile(xmlfile), ignore);
|
||||
RLOG("-----------");
|
||||
RLOG("With ignore");
|
||||
RLOG(MemoryUsedKb() << " KB used -------");
|
||||
RLOG(MemoryProfile());
|
||||
DumpMap(n);
|
||||
}
|
||||
{
|
||||
RTIMING("Parse all!");
|
||||
XmlNode n = ParseXML(LoadFile(xmlfile));
|
||||
RLOG("-----------");
|
||||
RLOG("ALL");
|
||||
RLOG(MemoryUsedKb() << " KB used -------");
|
||||
RLOG(MemoryProfile());
|
||||
DumpMap(n);
|
||||
}
|
||||
RLOG("-----------");
|
||||
RLOG(MemoryUsedKb() << " KB used -------");
|
||||
RLOG(MemoryProfile());
|
||||
RLOG("Press a key to continue");
|
||||
getchar();
|
||||
RLOG("----------- Shrink");
|
||||
MemoryShrink();
|
||||
RLOG(MemoryUsedKb() << " KB used -------");
|
||||
RLOG(MemoryProfile());
|
||||
RLOG("Press a key to continue");
|
||||
getchar();
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue