XMLStorage header file. More...
#include <wchar.h>#include <stdlib.h>#include <string.h>#include <stdarg.h>#include <assert.h>#include <fstream>#include <sstream>#include <string>#include <stack>#include <list>#include <map>

Go to the source code of this file.
Classes | |
| struct | XMLStorage::TmpHeap |
| struct | XMLStorage::XS_String |
| string class for TCHAR strings More... | |
| struct | XMLStorage::tifstream |
| struct | XMLStorage::tofstream |
| struct | XMLStorage::XMLLocation |
| location of XML Node including XML file name More... | |
| struct | XMLStorage::XMLError |
| XML Error with message and location. More... | |
| struct | XMLStorage::XMLErrorList |
| list of XMLError entries More... | |
| struct | XMLStorage::StyleSheet |
| XML Stylesheet entry. More... | |
| struct | XMLStorage::StyleSheetList |
| list of StyleSheet entries More... | |
| struct | XMLStorage::DocType |
| XML document type description. More... | |
| struct | XMLStorage::XMLFormat |
| Management of XML file headers and formating. More... | |
| struct | XMLStorage::HeaderlessXMLFormat |
| struct | XMLStorage::XS_SMNode |
| struct | XMLStorage::XS_StringMap |
| struct | XMLStorage::XS_StringMap::iterator |
| struct | XMLStorage::XS_StringMap::const_iterator |
| struct | XMLStorage::XPathElement |
| struct | XMLStorage::XPath |
| struct | XMLStorage::XMLNode |
| in memory representation of an XML node More... | |
| struct | XMLStorage::XMLNode::AttributeMap |
| map of XML node attributes More... | |
| struct | XMLStorage::XMLNode::Children |
| internal children node list More... | |
| struct | XMLStorage::XMLChildrenFilter |
| iterator access to children nodes with name filtering More... | |
| struct | XMLStorage::XMLChildrenFilter::iterator |
| internal iterator class More... | |
| struct | XMLStorage::const_XMLChildrenFilter |
| read only iterator access to children nodes with name filtering More... | |
| struct | XMLStorage::const_XMLChildrenFilter::const_iterator |
| internal iterator class More... | |
| struct | XMLStorage::XMLPos |
| iterator for XML trees More... | |
| struct | XMLStorage::const_XMLPos |
| iterator for XML trees More... | |
| struct | XMLStorage::XMLReaderBase |
| XML reader base class. More... | |
| struct | XMLStorage::XMLReader |
| XML file reader. More... | |
| struct | XMLStorage::ReadBuffer |
| struct | XMLStorage::ParseContext |
| struct | XMLStorage::XMLDoc |
| XML document holder. More... | |
| struct | XMLStorage::XMLStateReader |
| struct | XMLStorage::XMLStreamReader |
| struct | XMLStorage::XMLStreamChildrenIterator |
| read only iterator access to XMLStreamReader nodes More... | |
| struct | XMLStorage::XMLStreamChildrenIterator::const_iterator |
| internal iterator class More... | |
| struct | XMLStorage::XMLStreamChildrenFilter |
| read only iterator access to children nodes to XMLStreamReader nodes with name filtering More... | |
| struct | XMLStorage::XMLStreamChildrenFilter::const_iterator |
| internal iterator class More... | |
| struct | XMLStorage::XMLBool |
| type converter for boolean data More... | |
| struct | XMLStorage::XMLBoolRef |
| type converter for boolean data with write access More... | |
| struct | XMLStorage::XMLInt |
| type converter for integer data More... | |
| struct | XMLStorage::XMLIntRef |
| type converter for integer data with write access More... | |
| struct | XMLStorage::XMLInt64 |
| type converter for integer data More... | |
| struct | XMLStorage::XMLInt64Ref |
| type converter for integer data with write access More... | |
| struct | XMLStorage::XMLDouble |
| type converter for numeric data More... | |
| struct | XMLStorage::XMLDoubleRef |
| type converter for numeric data with write access More... | |
| struct | XMLStorage::XMLString |
| type converter for string data More... | |
| struct | XMLStorage::XMLStringRef |
| type converter for string data with write access More... | |
| struct | XMLStorage::XMLProperty |
| a key/value pair for property data access More... | |
| struct | XMLStorage::XMLPropertyReader |
| utility class to read property settings from a XML tree More... | |
| struct | XMLStorage::XMLPropertyReader::const_iterator |
| internal iterator class More... | |
| struct | XMLStorage::XMLMessage |
| XML message wrapper. More... | |
| struct | XMLStorage::XMLMessageFromString |
| helper structure to read XML messages from strings More... | |
| struct | XMLStorage::XMLMessageReader |
| Reader for XML Messages. More... | |
| struct | XMLStorage::XMLWriter |
| on the fly XML writer More... | |
| struct | XMLStorage::XMLWriter::StackEntry |
| container for XMLWriter state information More... | |
Namespaces | |
| namespace | XMLStorage |
Defines | |
| #define | XS_STRING_UTF8 |
| #define | XS_NATIVE |
| #define | TEXT(x) x |
| #define | _ttoi atoi |
| #define | _tfopen fopen |
| #define | _tcstod strtod |
| #define | _tcslen strlen |
| #define | _tcsstr strstr |
| #define | _snprintf snprintf |
| #define | _sntprintf snprintf |
| #define | _vsnprintf vsnprintf |
| #define | _vsntprintf vsnprintf |
| #define | _stricmp strcasecmp |
| #define | _tcsicmp strcasecmp |
| #define | strnicmp strncasecmp |
| #define | _tcsnicmp strncasecmp |
| #define | BUFFER_LEN 2048 |
| #define | BUFFER_HUGE 0x7F80 |
| #define | ALLOCA_MAX 0x10000 |
| #define | XS_CHAR char |
| #define | XS_TEXT(x) x |
| #define | LPXSSTR LPSTR |
| #define | LPCXSSTR LPCSTR |
| #define | XS_cmp strcmp |
| #define | XS_icmp _stricmp |
| #define | XS_ncmp strncmp |
| #define | XS_nicmp strnicmp |
| #define | XS_toi atoi |
| #define | XS_toi64 _atoi64 |
| #define | XS_tod strtod |
| #define | XS_len strlen |
| #define | XS_snprintf _snprintf |
| #define | XS_vsnprintf _vsnprintf |
| #define | XS_vsnprintf_s _vsnprintf_s |
| #define | XS_strstr strstr |
| #define | COUNTOF(b) (sizeof(b)/sizeof(b[0])) |
| #define | TMP_ALLOC(T, b, h, l) |
| #define | XS_EMPTY_STR XS_TEXT("") |
| #define | XS_TRUE_STR XS_TEXT("true") |
| #define | XS_FALSE_STR XS_TEXT("false") |
| #define | XS_INTFMT_STR XS_TEXT("%d") |
| #define | XS_INT64FMT_STR XS_TEXT("%I64d") |
| #define | XS_FLOATFMT_STR XS_TEXT("%f") |
| #define | XS_KEY_STR XS_TEXT("key") |
| #define | XS_VALUE_STR XS_TEXT("value") |
| #define | XS_PROPERTY_STR XS_TEXT("property") |
| #define | XS_EMPTY XS_EMPTY_STR |
| #define | XS_TRUE XS_TRUE_STR |
| #define | XS_FALSE XS_FALSE_STR |
| #define | XS_INTFMT XS_INTFMT_STR |
| #define | XS_INT64FMT XS_INT64FMT_STR |
| #define | XS_FLOATFMT XS_FLOATFMT_STR |
| #define | CDATA_START "<![CDATA[" |
| #define | CDATA_END "]]>" |
| #define | XML_INDENT_SPACE " " |
| #define | _XMLSTORAGE_H |
Typedefs | |
| typedef char | CHAR |
| typedef __wchar_t | WCHAR |
| typedef unsigned char | UCHAR |
| typedef char * | LPSTR |
| typedef const char * | LPCSTR |
| typedef WCHAR * | LPWSTR |
| typedef const WCHAR * | LPCWSTR |
| typedef char | TCHAR |
| typedef unsigned char | _TUCHAR |
| typedef CHAR * | PTSTR |
| typedef CHAR * | LPTSTR |
| typedef const CHAR * | LPCTSTR |
| typedef std::ostringstream | XMLStorage::fast_ostringstream |
Enumerations | |
| enum | XMLStorage::PRETTY_FLAGS { XMLStorage::PRETTY_PLAIN = 0, XMLStorage::PRETTY_LINEFEED = 1, XMLStorage::PRETTY_INDENT = 2 } |
| enum | XMLStorage::WRITE_MODE { XMLStorage::FORMAT_PLAIN, XMLStorage::FORMAT_SMART, XMLStorage::FORMAT_ORIGINAL, XMLStorage::FORMAT_PRETTY } |
Functions | |
| const char * | XMLStorage::get_xmlsym_end_utf8 (const char *p) |
| LPCXSSTR | XMLStorage::safe_skip_space (LPCXSSTR s) |
| template<typename T > | |
| XS_String | XMLStorage::from_utf8 (const T &s) |
| XS_String | XMLStorage::from_utf8 (const char *s, size_t l) |
| std::string | XMLStorage::EncodeXMLString (const XS_String &str, bool cdata) |
| encode XML string literals | |
| XS_String | XMLStorage::DecodeXMLString (const std::string &str_utf8) |
| decode XML string literals | |
| template<typename T > | |
| void | XMLStorage::read_option (T &var, const_XMLPos &cfg, LPCXSSTR key) |
| template<> | |
| void | XMLStorage::read_option (int &var, const_XMLPos &cfg, LPCXSSTR key) |
XMLStorage header file.
Definition in file xmlstorage.h.
| #define _snprintf snprintf |
Definition at line 209 of file xmlstorage.h.
| #define _sntprintf snprintf |
Definition at line 210 of file xmlstorage.h.
| #define _stricmp strcasecmp |
Definition at line 213 of file xmlstorage.h.
Referenced by XMLStorage::XMLFormat::print_header(), and XMLStorage::ParseContext::process_next().
| #define _tcsicmp strcasecmp |
Definition at line 214 of file xmlstorage.h.
Referenced by StartMenu::AddEntry(), StartMenu::AddShellEntries(), ExplorerCmd::EvaluateOption(), get_windows_version_str(), BookmarkList::import_IE_favorites(), FileChildWindow::jump_to_int(), and ShellDirectory::read_directory().
| #define _tcslen strlen |
Definition at line 207 of file xmlstorage.h.
Referenced by FileChildWindow::FileChildWindow(), ShellDirectory::fill_w32fdata_shell(), Entry::get_path_base(), FileChildWindow::jump_to_int(), XMLStorage::XPathElement::parse(), ShellDirectory::read_directory(), RegDirectory::read_directory(), FATDirectory::read_directory(), and RecursiveCreateDirectory().
| #define _tcsnicmp strncasecmp |
Definition at line 216 of file xmlstorage.h.
Referenced by FindProgramDlg::collect_programs_callback(), MainFrameBase::ExecuteCommandbar(), MDIShellBrowserChild::jump_to_int(), FileChildWindow::jump_to_int(), XMLStorage::XPathElement::parse(), and SplitFileSysURL().
| #define _tcsstr strstr |
Definition at line 208 of file xmlstorage.h.
Referenced by _tWinMain(), FindProgramDlg::add_entry(), FavoritesMenu::AddEntries(), StartMenu::AddShellEntries(), and MDIMainFrame::WndProc().
| #define _tcstod strtod |
Definition at line 206 of file xmlstorage.h.
| #define _tfopen fopen |
Definition at line 205 of file xmlstorage.h.
| #define _ttoi atoi |
Definition at line 204 of file xmlstorage.h.
Referenced by XMLStorage::XPathElement::parse().
| #define _vsnprintf vsnprintf |
Definition at line 211 of file xmlstorage.h.
| #define _vsntprintf vsnprintf |
Definition at line 212 of file xmlstorage.h.
Referenced by String::appendf(), String::printf(), String::vappendf(), and String::vprintf().
| #define _XMLSTORAGE_H |
Definition at line 4188 of file xmlstorage.h.
| #define ALLOCA_MAX 0x10000 |
Definition at line 243 of file xmlstorage.h.
| #define BUFFER_HUGE 0x7F80 |
Definition at line 240 of file xmlstorage.h.
Referenced by XMLStorage::XS_String::vappendf(), and XMLStorage::XS_String::vprintf().
| #define BUFFER_LEN 2048 |
Definition at line 237 of file xmlstorage.h.
Referenced by XMLStorage::XS_String::vappendf(), and XMLStorage::XS_String::vprintf().
| #define CDATA_END "]]>" |
Definition at line 524 of file xmlstorage.h.
Referenced by XMLStorage::DecodeXMLString(), XMLStorage::EncodeXMLString(), XMLStorage::XMLReaderBase::EndElementHandler(), and XMLStorage::ReadBuffer::has_CDEnd().
| #define CDATA_START "<![CDATA[" |
Definition at line 523 of file xmlstorage.h.
Referenced by XMLStorage::EncodeXMLString(), and XMLStorage::XMLReaderBase::EndElementHandler().
| #define COUNTOF | ( | b ) | (sizeof(b)/sizeof(b[0])) |
Definition at line 292 of file xmlstorage.h.
Referenced by XMLStorage::XMLDoubleRef::assign(), XMLStorage::XMLInt64Ref::assign(), XMLStorage::XMLIntRef::assign(), XMLStorage::XMLDouble::operator XS_String(), XMLStorage::XMLInt64::operator XS_String(), XMLStorage::XMLInt::operator XS_String(), XMLStorage::XS_String::vappendf(), and XMLStorage::XS_String::vprintf().
| #define LPCXSSTR LPCSTR |
Definition at line 256 of file xmlstorage.h.
Referenced by XMLStorage::DecodeXMLString(), XMLStorage::EncodeXMLString(), XMLStorage::XPathElement::parse(), XMLStorage::XMLBool::XMLBool(), XMLStorage::XMLDouble::XMLDouble(), XMLStorage::XMLInt::XMLInt(), and XMLStorage::XMLInt64::XMLInt64().
| #define LPXSSTR LPSTR |
Definition at line 255 of file xmlstorage.h.
Referenced by XMLStorage::DecodeXMLString(), and XMLStorage::EncodeXMLString().
| #define strnicmp strncasecmp |
Definition at line 215 of file xmlstorage.h.
| #define TEXT | ( | x ) | x |
Definition at line 197 of file xmlstorage.h.
Referenced by _log_(), _tWinMain(), FileChildWindow::activate_entry(), QuickLaunchBar::AddShortcuts(), BackgroundWindow::BackgroundWindow(), ClockWindow::ClockWindow(), NotifyArea::Command(), StartMenuHandler::Command(), MDIMainFrame::Command(), MainFrameBase::Command(), DesktopBar::Command(), ClockWindow::Create(), FileChildWindow::create(), DesktopWindow::Create(), ShellPath::create_absolute_pidl(), NotifyIconConfig::create_name(), display_error(), Entry::do_context_menu(), Pane::draw_item(), MDIShellBrowserChild::entry_selected(), SDIMainFrame::entry_selected(), ExplorerCmd::EvaluateOption(), MainFrameBase::ExecuteCommandbar(), ExplorerAboutDlg::ExplorerAboutDlg(), ExplorerPropertySheet(), FileChildWindow::FileChildWindow(), WinDirectory::find_entry(), ShellDirectory::find_entry(), RegDirectory::find_entry(), NtObjDirectory::find_entry(), FATDirectory::find_entry(), ShellFolder::get_name(), WinDirectory::get_next_path_component(), RegDirectory::get_next_path_component(), FATDirectory::get_next_path_component(), ShellDirectory::get_path(), Entry::get_path_base(), get_windows_version_str(), HandleException(), BookmarkList::import_IE_favorites(), TaskBar::Init(), ShellBrowser::Init(), Pane::init(), ExplorerGlobals::init(), OutputWorker::init_output(), Pane::insert_entries(), TrayNotifyDlg::InsertItem(), ShellBrowser::InsertSubitems(), FileTypeManager::is_exe_file(), IsAnyDesktopRunning(), ShellBrowser::jump_to(), MDIShellBrowserChild::jump_to_int(), launch_cpanel(), main(), MainFrameBase::MainFrameBase(), MDIMainFrame::MDIMainFrame(), ShellBrowser::MessageSFVCB(), BrowserNavigator::navigated(), TaskBar::Notify(), MainFrameBase::Notify(), MainFrameBase::OpenShellFolders(), FileTypeManager::operator[](), OutputWorker::OutputWorker(), Favorites::read(), WinDirectory::read_directory(), ShellDirectory::read_directory(), RegistryRoot::read_directory(), RegDirectory::read_directory(), NtObjDirectory::read_directory(), ExplorerGlobals::read_persistent(), RecursiveCreateDirectory(), TrayNotifyDlg::RefreshProperties(), FileChildWindow::set_curdir(), BrowserNavigator::set_html_page(), FileTypeManager::set_type(), ShowExitWindowsDialog(), StartMenuHandler::ShowLaunchDialog(), StartMenuHandler::ShowLogoffDialog(), StartMenuHandler::ShowRestartDialog(), StartMenuHandler::ShowSearchComputer(), StartMenuHandler::ShowSearchDialog(), SpecialFolderFSPath::SpecialFolderFSPath(), SplitFileSysURL(), Context::toString(), COMException::toString(), WebChildWindow::WndProc(), ClockWindow::WndProc(), NotifyArea::WndProc(), SDIMainFrame::WndProc(), MDIMainFrame::WndProc(), DesktopBar::WndProc(), and BackgroundWindow::WndProc().
| #define TMP_ALLOC | ( | T, | |
| b, | |||
| h, | |||
| l | |||
| ) |
TmpHeap h; T* b; \ if (l <= ALLOCA_MAX) b = (T*)alloca(sizeof(T)*l); \ else h = b = (T*)malloc(sizeof(T)*l)
Definition at line 321 of file xmlstorage.h.
Referenced by XMLStorage::DecodeXMLString().
| #define XML_INDENT_SPACE " " |
Definition at line 780 of file xmlstorage.h.
| #define XS_CHAR char |
Definition at line 253 of file xmlstorage.h.
Referenced by XMLStorage::XMLDoubleRef::assign(), XMLStorage::XMLInt64Ref::assign(), XMLStorage::XMLIntRef::assign(), XMLStorage::DecodeXMLString(), XMLStorage::EncodeXMLString(), XMLStorage::XMLDouble::operator XS_String(), XMLStorage::XMLInt64::operator XS_String(), XMLStorage::XMLInt::operator XS_String(), XMLStorage::XS_String::vappendf(), and XMLStorage::XS_String::vprintf().
| #define XS_cmp strcmp |
Definition at line 257 of file xmlstorage.h.
| #define XS_EMPTY XS_EMPTY_STR |
Definition at line 511 of file xmlstorage.h.
| #define XS_EMPTY_STR XS_TEXT("") |
Definition at line 491 of file xmlstorage.h.
Referenced by XMLStorage::XMLNode::get_sub_content(), and XMLStorage::safe_skip_space().
| #define XS_FALSE XS_FALSE_STR |
Definition at line 513 of file xmlstorage.h.
Referenced by XMLStorage::XMLBoolRef::assign(), and XMLStorage::XMLBool::operator LPCXSSTR().
| #define XS_FALSE_STR XS_TEXT("false") |
Definition at line 493 of file xmlstorage.h.
| #define XS_FLOATFMT XS_FLOATFMT_STR |
Definition at line 516 of file xmlstorage.h.
Referenced by XMLStorage::XMLDoubleRef::assign(), and XMLStorage::XMLDouble::operator XS_String().
| #define XS_FLOATFMT_STR XS_TEXT("%f") |
Definition at line 496 of file xmlstorage.h.
| #define XS_icmp _stricmp |
Definition at line 258 of file xmlstorage.h.
Referenced by XMLStorage::XMLBoolRef::operator bool(), XMLStorage::XMLBoolRef::operator!(), XMLStorage::ParseContext::process_next(), and XMLStorage::XMLBool::XMLBool().
| #define XS_INT64FMT XS_INT64FMT_STR |
Definition at line 515 of file xmlstorage.h.
Referenced by XMLStorage::XMLInt64Ref::assign(), and XMLStorage::XMLInt64::operator XS_String().
| #define XS_INT64FMT_STR XS_TEXT("%I64d") |
Definition at line 495 of file xmlstorage.h.
| #define XS_INTFMT XS_INTFMT_STR |
Definition at line 514 of file xmlstorage.h.
Referenced by XMLStorage::XMLIntRef::assign(), and XMLStorage::XMLInt::operator XS_String().
| #define XS_INTFMT_STR XS_TEXT("%d") |
Definition at line 494 of file xmlstorage.h.
| #define XS_KEY_STR XS_TEXT("key") |
Definition at line 498 of file xmlstorage.h.
| #define XS_len strlen |
Definition at line 264 of file xmlstorage.h.
Referenced by XMLStorage::DecodeXMLString(), and XMLStorage::EncodeXMLString().
| #define XS_NATIVE |
Definition at line 101 of file xmlstorage.h.
| #define XS_ncmp strncmp |
Definition at line 259 of file xmlstorage.h.
| #define XS_nicmp strnicmp |
Definition at line 260 of file xmlstorage.h.
Referenced by XMLStorage::DecodeXMLString(), and XMLStorage::XMLBool::XMLBool().
| #define XS_PROPERTY_STR XS_TEXT("property") |
Definition at line 500 of file xmlstorage.h.
| #define XS_snprintf _snprintf |
| #define XS_STRING_UTF8 |
Definition at line 62 of file xmlstorage.h.
| #define XS_strstr strstr |
Definition at line 268 of file xmlstorage.h.
Referenced by XMLStorage::DecodeXMLString().
| #define XS_TEXT | ( | x ) | x |
Definition at line 254 of file xmlstorage.h.
Referenced by XMLStorage::DecodeXMLString(), XMLStorage::XPathElement::matches(), and XMLStorage::ParseContext::process_next().
| #define XS_tod strtod |
Definition at line 263 of file xmlstorage.h.
Referenced by XMLStorage::XMLDoubleRef::operator double(), and XMLStorage::XMLDouble::XMLDouble().
| #define XS_toi atoi |
Definition at line 261 of file xmlstorage.h.
Referenced by XMLStorage::XMLIntRef::operator int(), XMLStorage::read_option(), and XMLStorage::XMLInt::XMLInt().
| #define XS_toi64 _atoi64 |
Definition at line 262 of file xmlstorage.h.
Referenced by XMLStorage::XMLInt64Ref::operator INT64(), and XMLStorage::XMLInt64::XMLInt64().
| #define XS_TRUE XS_TRUE_STR |
Definition at line 512 of file xmlstorage.h.
Referenced by XMLStorage::XMLBoolRef::assign(), XMLStorage::XMLBoolRef::operator bool(), XMLStorage::XMLBool::operator LPCXSSTR(), XMLStorage::XMLBoolRef::operator!(), and XMLStorage::XMLBool::XMLBool().
| #define XS_TRUE_STR XS_TEXT("true") |
Definition at line 492 of file xmlstorage.h.
| #define XS_VALUE_STR XS_TEXT("value") |
Definition at line 499 of file xmlstorage.h.
| #define XS_vsnprintf _vsnprintf |
Definition at line 266 of file xmlstorage.h.
Referenced by XMLStorage::XS_String::vappendf(), and XMLStorage::XS_String::vprintf().
| #define XS_vsnprintf_s _vsnprintf_s |
Definition at line 267 of file xmlstorage.h.
Referenced by XMLStorage::XS_String::vappendf(), and XMLStorage::XS_String::vprintf().
| typedef unsigned char _TUCHAR |
Definition at line 199 of file xmlstorage.h.
| typedef char CHAR |
Definition at line 184 of file xmlstorage.h.
| typedef const char* LPCSTR |
Definition at line 192 of file xmlstorage.h.
Definition at line 202 of file xmlstorage.h.
Definition at line 194 of file xmlstorage.h.
| typedef char* LPSTR |
Definition at line 191 of file xmlstorage.h.
Definition at line 201 of file xmlstorage.h.
Definition at line 193 of file xmlstorage.h.
Definition at line 200 of file xmlstorage.h.
| typedef char TCHAR |
Definition at line 198 of file xmlstorage.h.
| typedef unsigned char UCHAR |
Definition at line 190 of file xmlstorage.h.
| typedef __wchar_t WCHAR |
Definition at line 189 of file xmlstorage.h.
|
ROS Explorer Source Code Documentation
generated on 02.01.2013 by
|