#include <SmbiosXmlImpl_xerces.h>
Inheritance diagram for SmbiosTableXml:
Public Types | |
typedef SmbiosTableIterator | iterator |
typedef ConstSmbiosTableIterator | const_iterator |
Public Member Functions | |
virtual iterator | operator[] (const std::string &) |
Standard indexed access by string description. XML ENHANCED. | |
virtual const_iterator | operator[] (const std::string &) const |
Standard indexed access by string description. XML ENHANCED. | |
virtual std::ostream & | streamify (std::ostream &cout) const |
Used by operator << (std::ostream & cout, const ISmbiosTable & ) to. | |
virtual | ~SmbiosTableXml () |
SmbiosTableXml (std::vector< SmbiosStrategy * > initStrategyList, bool strictValidation=0) | |
void | setXmlFilePath (std::string) |
int | getTypeForString (const std::string) const |
const std::string | getStringForType (const int) const |
const XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument * | getXmlDoc () const |
virtual iterator | begin () |
Standard iterator interface. Points to first table item. | |
virtual const_iterator | begin () const |
Standard iterator interface. Points to first table item. | |
virtual iterator | end () |
Standard iterator interface. Points to one-past-the-last table item. | |
virtual const_iterator | end () const |
Standard iterator interface. Points to one-past-the-last table item. | |
virtual iterator | operator[] (const int) |
Standard indexed access by integer item type. | |
virtual const_iterator | operator[] (const int) const |
Standard indexed access by integer item type. | |
virtual void | rawMode (bool m) const |
Disables all workarounds for _new_ items created by the table. | |
virtual int | getNumberOfEntries () const |
Returns the number of table items, per SMBIOS table header. | |
virtual smbiosLowlevel::smbios_table_entry_point | getTableEPS () const |
Returns the table entry point structure. | |
virtual void | initializeWorkaround () const |
virtual void | setStrictValidationMode (bool mode) const |
virtual bool | getStrictValidationMode () const |
virtual ISmbiosItem * | getCachedItem (const void *) const |
virtual void | cacheItem (const void *, ISmbiosItem &newitem) const |
virtual void | clearItemCache () const |
Clears out any cached SmbiosItem entries in the cache. | |
Protected Member Functions | |
SmbiosTableXml () | |
virtual ISmbiosItem & | makeItem (const void *header=0) const |
const void * | nextSmbiosStruct (const void *current=0) const |
Protected Attributes | |
std::string | xmlFile |
XERCES_CPP_NAMESPACE_QUALIFIER DOMBuilder * | parser |
XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument * | doc |
bool | xmlInitialized |
std::map< const void *, ISmbiosItem * > | itemList |
bool | initializing |
bool | strictValidationMode |
std::auto_ptr< SmbiosWorkaroundTable > | workaround |
const u8 * | smbiosBuffer |
smbiosLowlevel::smbios_table_entry_point | table_header |
Private Member Functions | |
SmbiosTableXml (const SmbiosTableXml &source) | |
SmbiosTableXml & | operator= (const SmbiosTableXml &source) |
Friends | |
class | SmbiosTableIteratorBase |
Definition at line 69 of file SmbiosXmlImpl_xerces.h.
|
|
|
|
|
Definition at line 247 of file SmbiosXml_xerces.cpp. References SmbiosTableXml::doc, SmbiosTableXml::parser, and SmbiosTableXml::xmlInitialized. |
|
Definition at line 240 of file SmbiosXml_xerces.cpp. References SmbiosTableXml::setXmlFilePath(), and SmbiosTableXml::xmlFile. |
|
Definition at line 234 of file SmbiosXml_xerces.cpp. References SmbiosTableXml::setXmlFilePath(), and SmbiosTableXml::xmlFile. |
|
|
|
Standard iterator interface. Points to first table item. Standard iterator interface. Points to first table item.
Implements ISmbiosTable. Definition at line 128 of file SmbiosTable.cpp. |
|
Standard iterator interface. Points to first table item.
Implements ISmbiosTable. Definition at line 123 of file SmbiosTable.cpp. |
|
Definition at line 114 of file SmbiosTable.cpp. References SmbiosTable::itemList. Referenced by SmbiosTableIteratorBase::dereference(). |
|
Clears out any cached SmbiosItem entries in the cache. This API is useful for two instances. First, you can use this to reduce memory usage if you know that you do not need any ISmbiosItem(s) out of the table for a while. The cached ISmbiosItem(s) will be deleted and then re-populated on demand when queries are made for them. Next, this API is used internally when reReadTable() is called to clear out all old ISmbiosItems.
Implements ISmbiosTable. Definition at line 243 of file SmbiosTable.cpp. References SmbiosTable::itemList. Referenced by SmbiosTable::initializeWorkaround(), SmbiosTable::reReadTable(), and SmbiosTable::~SmbiosTable(). |
|
Standard iterator interface. Points to one-past-the-last table item. Used by const_iterator. Standard iterator interface. Points to first table item.
Implements ISmbiosTable. Definition at line 138 of file SmbiosTable.cpp. |
|
Standard iterator interface. Points to one-past-the-last table item. Standard iterator interface. Points to first table item.
Implements ISmbiosTable. Definition at line 133 of file SmbiosTable.cpp. |
|
Definition at line 96 of file SmbiosTable.cpp. References _, and SmbiosTable::itemList. Referenced by SmbiosTableIteratorBase::dereference(). |
|
Returns the number of table items, per SMBIOS table header.
Implements ISmbiosTable. Definition at line 338 of file SmbiosTable.cpp. References SmbiosTable::table_header, and smbios_table_entry_point::table_num_structs. |
|
Definition at line 262 of file SmbiosTable.cpp. References SmbiosTable::strictValidationMode. Referenced by SmbiosTable::reReadTable(). |
|
Definition at line 329 of file SmbiosXml_xerces.cpp. References SmbiosTableXml::doc, and smbios::getStringForType(). |
|
Returns the table entry point structure.
Implements ISmbiosTable. Definition at line 343 of file SmbiosTable.cpp. References SmbiosTable::table_header. |
|
|
|
Definition at line 318 of file SmbiosXml_xerces.cpp. References SmbiosTableXml::doc. |
|
Definition at line 209 of file SmbiosTable.cpp. References SmbiosTable::clearItemCache(), SmbiosWorkaroundFactory::getFactory(), SmbiosTable::initializing, and SmbiosTable::workaround. Referenced by SmbiosXmlFactoryImpl::makeNew(), and SmbiosFactoryImpl::makeNew(). |
|
Reimplemented from SmbiosTable. Definition at line 260 of file SmbiosXml_xerces.cpp. References SmbiosTableXml::doc, SmbiosTable::initializing, SmbiosTable::workaround, and SmbiosTableXml::xmlFile. |
|
Definition at line 281 of file SmbiosTable.cpp. References smbios_structure_header::length, SmbiosTable::smbiosBuffer, SmbiosTable::table_header, smbios_table_entry_point::table_length, and smbios_structure_header::type. |
|
|
|
Standard indexed access by integer item type. Standard indexed access by integer item type. The operator[] method returns an iterator that can be used to iterator over all items in the table of the supplied type. So, for example, if you want to perform an operation on all SMBIOS type 0x01 (System Information Block) structures, just index the table object using the [] operator.
Implements ISmbiosTable. Definition at line 148 of file SmbiosTable.cpp. |
|
Standard indexed access by integer item type. The operator[] method returns an iterator that can be used to iterator over all items in the table of the supplied type. So, for example, if you want to perform an operation on all SMBIOS type 0x01 (System Information Block) structures, just index the table object using the [] operator.
Implements ISmbiosTable. Definition at line 143 of file SmbiosTable.cpp. |
|
Standard indexed access by string description. XML ENHANCED. Standard indexed access by string description. XML ENHANCED. XML Enhanced indexing operator. You can pass in a string description of the table and the SmbiosTable class will look up the string in an XML description file to find out the item number that corresponds with that text. The nice extension that is supplied by the XML interface is that all Item access to the item returned are type checked against the XML, so you cannot, for example, access an 8-bit number as a 16-bit number. Standard indexed access by integer item type. The operator[] method returns an iterator that can be used to iterator over all items in the table of the supplied type. So, for example, if you want to perform an operation on all SMBIOS type 0x01 (System Information Block) structures, just index the table object using the [] operator.
Reimplemented from SmbiosTable. |
|
Standard indexed access by string description. XML ENHANCED. XML Enhanced indexing operator. You can pass in a string description of the table and the SmbiosTable class will look up the string in an XML description file to find out the item number that corresponds with that text. The nice extension that is supplied by the XML interface is that all Item access to the item returned are type checked against the XML, so you cannot, for example, access an 8-bit number as a 16-bit number. Standard indexed access by integer item type. The operator[] method returns an iterator that can be used to iterator over all items in the table of the supplied type. So, for example, if you want to perform an operation on all SMBIOS type 0x01 (System Information Block) structures, just index the table object using the [] operator.
Reimplemented from SmbiosTable. |
|
Disables all workarounds for _new_ items created by the table. Any new item generated by the table will not have workarounds applied to them. However, any previously-existing items that have had workarounds applied still exist. If this is not what you want, recommend calling clearItemCache() prior to calling rawMode().
Implements ISmbiosTable. Definition at line 238 of file SmbiosTable.cpp. References SmbiosTable::initializing. |
|
Definition at line 257 of file SmbiosTable.cpp. References SmbiosTable::strictValidationMode. |
|
Definition at line 279 of file SmbiosXml_xerces.cpp. References SmbiosTableXml::doc, xmlutils::getParser(), smbios::getSmbiosXmlDoc(), SmbiosTableXml::parser, smbios::validateSmbiosXmlDoc(), SmbiosTableXml::xmlFile, and SmbiosTableXml::xmlInitialized. Referenced by SmbiosXmlFactoryImpl::makeNew(), and SmbiosTableXml::SmbiosTableXml(). |
|
Used by operator << (std::ostream & cout, const ISmbiosTable & ) to. Users normally would not need or want to call this API. The normal operator<<() has been overloaded to call this function internally. Reimplemented from SmbiosTable. |
|
Definition at line 142 of file SmbiosImpl.h. |
|
Definition at line 105 of file SmbiosXmlImpl_xerces.h. Referenced by SmbiosTableXml::getStringForType(), SmbiosTableXml::getXmlDoc(), SmbiosTableXml::makeItem(), SmbiosTableXml::setXmlFilePath(), and SmbiosTableXml::~SmbiosTableXml(). |
|
Definition at line 156 of file SmbiosImpl.h. Referenced by SmbiosTable::initializeWorkaround(), SmbiosTableXml::makeItem(), SmbiosTable::makeItem(), SmbiosTable::rawMode(), and SmbiosTable::reReadTable(). |
|
Definition at line 155 of file SmbiosImpl.h. Referenced by SmbiosTable::cacheItem(), SmbiosTable::clearItemCache(), and SmbiosTable::getCachedItem(). |
|
Definition at line 100 of file SmbiosXmlImpl_xerces.h. Referenced by SmbiosTableXml::setXmlFilePath(), and SmbiosTableXml::~SmbiosTableXml(). |
|
Definition at line 159 of file SmbiosImpl.h. Referenced by SmbiosTable::nextSmbiosStruct(), SmbiosTable::reReadTable(), and SmbiosTable::~SmbiosTable(). |
|
Definition at line 157 of file SmbiosImpl.h. Referenced by SmbiosTable::getStrictValidationMode(), and SmbiosTable::setStrictValidationMode(). |
|
Definition at line 160 of file SmbiosImpl.h. Referenced by SmbiosTable::getNumberOfEntries(), SmbiosTable::getTableEPS(), SmbiosTable::nextSmbiosStruct(), SmbiosTable::reReadTable(), SmbiosTable::SmbiosTable(), and SmbiosTable::~SmbiosTable(). |
|
Definition at line 158 of file SmbiosImpl.h. Referenced by SmbiosTable::initializeWorkaround(), SmbiosTableXml::makeItem(), and SmbiosTable::makeItem(). |
|
Definition at line 96 of file SmbiosXmlImpl_xerces.h. Referenced by SmbiosTableXml::makeItem(), SmbiosTableXml::setXmlFilePath(), and SmbiosTableXml::SmbiosTableXml(). |
|
Definition at line 109 of file SmbiosXmlImpl_xerces.h. Referenced by SmbiosTableXml::setXmlFilePath(), and SmbiosTableXml::~SmbiosTableXml(). |