52 #ifndef ETISS_FAULT_XML_H_
53 #define ETISS_FAULT_XML_H_
124 std::list<std::string> warnings;
125 std::list<std::string> errors;
126 void ignoredNode(
const pugi::xml_node &node,
const std::string &msg);
127 void unexpectedNode(
const pugi::xml_node &node,
const std::string &msg);
128 void print(std::ostream &out)
const;
132 #if CXX0X_UP_SUPPORTED
133 template <
typename T>
136 static_assert((
sizeof(T) == -1),
"etiss::fault::xml::parse needs to be specialized.");
139 template <
typename T>
142 static_assert((
sizeof(T) == -1),
"etiss::fault::xml::write needs to be specialized.");
146 template <
typename T>
148 template <
typename T>
152 #if CXX0X_UP_SUPPORTED
153 template <
typename T>
154 bool parse_attr(
pugi::xml_node node,
const std::string &attr_name, T &dst, Diagnostics &diag)
156 static_assert((
sizeof(T) == -1),
"etiss::fault::xml::parse_attr needs to be specialized.");
159 template <
typename T>
160 bool write_attr(
pugi::xml_node node,
const std::string &attr_name,
const T &src, Diagnostics &diag)
162 static_assert((
sizeof(T) == -1),
"etiss::fault::xml::write_attr needs to be specialized.");
166 template <
typename T>
167 bool parse_attr(
pugi::xml_node node,
const std::string &attr_name, T &dst, Diagnostics &diag);
168 template <
typename T>
169 bool write_attr(
pugi::xml_node node,
const std::string &attr_name,
const T &src, Diagnostics &diag);
175 bool parse<std::string>(
pugi::xml_node node, std::string &dst, Diagnostics &diag);
177 bool write<std::string>(
pugi::xml_node node,
const std::string &src, Diagnostics &diag);
187 bool parse<unsigned>(
pugi::xml_node node,
unsigned &dst, Diagnostics &diag);
189 bool write<unsigned>(
pugi::xml_node node,
const unsigned &src, Diagnostics &diag);
192 bool parse_attr<std::string>(
pugi::xml_node node,
const std::string &attr_name, std::string &dst, Diagnostics &diag);
194 bool write_attr<std::string>(
pugi::xml_node node,
const std::string &attr_name,
const std::string &src,
198 template <
typename T>
200 bool fromString(
const std::string &
s, T &val);
203 bool fromString<uint64_t>(
const std::string &
s,
uint64_t &val);
205 bool fromString<unsigned>(
const std::string &
s,
unsigned &val);
207 bool hasName(
const pugi::xml_node &node,
const std::string &name);
contains general definitions used by other fault library code
#define static_assert(x, y)
__device__ __2f16 float bool s
static __inline__ uint64_t
void setCoreName(std::string &str)
Page Table Entry (PTE) defines the composition of Page Frame Number (PFN) and relavant flags.