ReactOS 0.4.15-dev-7887-g64a59a1
Exe Struct Reference

#include <xml2sdb.h>

Collaboration diagram for Exe:

Public Member Functions

 Exe ()
 
bool fromXml (XMLHandle dbNode)
 
bool toSdb (PDB pdb, Database &db)
 

Public Attributes

std::string Name
 
GUID ExeID
 
std::string AppName
 
std::string Vendor
 
TAGID Tagid
 
std::list< MatchingFileMatchingFiles
 
std::list< ShimRefShimRefs
 
std::list< FlagRefFlagRefs
 

Detailed Description

Definition at line 148 of file xml2sdb.h.

Constructor & Destructor Documentation

◆ Exe()

Exe::Exe ( )
inline

Definition at line 150 of file xml2sdb.h.

150: Tagid(0) { ; }
TAGID Tagid
Definition: xml2sdb.h:159

Member Function Documentation

◆ fromXml()

bool Exe::fromXml ( XMLHandle  dbNode)

Definition at line 546 of file xml2sdb.cpp.

547{
548 Name = ReadStringNode(dbNode, "NAME");
549 ReadGuidNode(dbNode, "EXE_ID", ExeID);
550 AppName = ReadStringNode(dbNode, "APP_NAME");
551 Vendor = ReadStringNode(dbNode, "VENDOR");
552
553 ReadGeneric(dbNode, MatchingFiles, "MATCHING_FILE");
554
555 ReadGeneric(dbNode, ShimRefs, "SHIM_REF");
556 ReadGeneric(dbNode, FlagRefs, "FLAG_REF");
557
558 return !Name.empty();
559}
std::list< MatchingFile > MatchingFiles
Definition: xml2sdb.h:160
std::string AppName
Definition: xml2sdb.h:157
GUID ExeID
Definition: xml2sdb.h:156
std::list< ShimRef > ShimRefs
Definition: xml2sdb.h:161
std::string Vendor
Definition: xml2sdb.h:158
std::list< FlagRef > FlagRefs
Definition: xml2sdb.h:162
bool ReadGuidNode(XMLHandle dbNode, const char *nodeName, GUID &guid)
Definition: xml2sdb.cpp:211
void ReadGeneric(XMLHandle dbNode, std::list< T > &result, const char *nodeName)
Definition: xml2sdb.cpp:267
std::string ReadStringNode(XMLHandle dbNode, const char *nodeName)
Definition: xml2sdb.cpp:79

◆ toSdb()

bool Exe::toSdb ( PDB  pdb,
Database db 
)

Definition at line 561 of file xml2sdb.cpp.

562{
564
565 db.WriteString(pdb, TAG_NAME, Name, true);
566 if (IsEmptyGuid(ExeID))
569
570
573
574 if (!WriteGeneric(pdb, MatchingFiles, db))
575 return false;
576 if (!WriteGeneric(pdb, ShimRefs, db))
577 return false;
578 if (!WriteGeneric(pdb, FlagRefs, db))
579 return false;
580
581 return !!db.EndWriteListTag(pdb, Tagid);
582}
static PDB pdb
Definition: db.cpp:172
#define TAG_EXE
Definition: db.cpp:87
#define TAG_APP_NAME
Definition: db.cpp:101
#define TAG_VENDOR
Definition: db.cpp:100
#define TAG_EXE_ID
Definition: db.cpp:120
void WriteBinary(PDB pdb, TAG tag, const GUID &guid, bool always=false)
Definition: xml2sdb.cpp:589
BOOL EndWriteListTag(PDB pdb, TAGID tagid)
Definition: xml2sdb.cpp:629
TAGID BeginWriteListTag(PDB pdb, TAG tag)
Definition: xml2sdb.cpp:624
void WriteString(PDB pdb, TAG tag, const sdbstring &str, bool always=false)
Definition: xml2sdb.cpp:601
#define TAG_NAME
Definition: vfat.h:553
void RandomGuid(GUID &g)
Definition: xml2sdb.cpp:51
bool WriteGeneric(PDB pdb, std::list< T > &data, Database &db)
Definition: xml2sdb.cpp:281
bool IsEmptyGuid(const GUID &g)
Definition: xml2sdb.cpp:46

Member Data Documentation

◆ AppName

std::string Exe::AppName

Definition at line 157 of file xml2sdb.h.

Referenced by fromXml(), and toSdb().

◆ ExeID

GUID Exe::ExeID

Definition at line 156 of file xml2sdb.h.

Referenced by fromXml(), and toSdb().

◆ FlagRefs

std::list<FlagRef> Exe::FlagRefs

Definition at line 162 of file xml2sdb.h.

Referenced by fromXml(), and toSdb().

◆ MatchingFiles

std::list<MatchingFile> Exe::MatchingFiles

Definition at line 160 of file xml2sdb.h.

Referenced by fromXml(), and toSdb().

◆ Name

std::string Exe::Name

Definition at line 155 of file xml2sdb.h.

◆ ShimRefs

std::list<ShimRef> Exe::ShimRefs

Definition at line 161 of file xml2sdb.h.

Referenced by fromXml(), and toSdb().

◆ Tagid

TAGID Exe::Tagid

Definition at line 159 of file xml2sdb.h.

Referenced by toSdb().

◆ Vendor

std::string Exe::Vendor

Definition at line 158 of file xml2sdb.h.

Referenced by fromXml(), and toSdb().


The documentation for this struct was generated from the following files: