History

TimeSeriesPlatformLibrary: Added metadata schemas as embedded resources to simplify metadata generation.

J. Ritchie Carroll committed 7 years ago

Commit 48e12f81 parent e766a8220 files · +1906 −23Browse files

Showing the changes to Source/Libraries/TimeSeriesPlatformLibrary/Data/DataSet.cpp (1 of 20 files). Show all

Unified · Split

Source/Libraries/TimeSeriesPlatformLibrary/Data/DataSet.cpp+29−1
@@ -136,10 +136,15 @@ void DataSet::ReadXml(const string& fileName) · 135 unmodified lines
136}136}
137 137
138void DataSet::ReadXml(const vector<uint8_t>& buffer)138void DataSet::ReadXml(const vector<uint8_t>& buffer)
139{
140 ReadXml(buffer.data(), buffer.size());
141}
142
143void DataSet::ReadXml(const uint8_t* buffer, uint32_t length)
139{144{
140 xml_document document;145 xml_document document;
141 146
142 const xml_parse_result result = document.load_buffer_inplace(const_cast<uint8_t*>(buffer.data()), buffer.size());147 const xml_parse_result result = document.load_buffer_inplace(const_cast<uint8_t*>(buffer), length);
143 148
144 if (result.status != xml_parse_status::status_ok)149 if (result.status != xml_parse_status::status_ok)
145 throw DataSetException("Failed to load XML from buffer: " + string(result.description()));150 throw DataSetException("Failed to load XML from buffer: " + string(result.description()));
@@ -147,6 +152,11 @@ void DataSet::ReadXml(const vector<uint8_t>& buffer) · 1 unmodified line
147 ParseXml(document);152 ParseXml(document);
148}153}
149 154
155void DataSet::ReadXml(const pugi::xml_document& document)
156{
157 ParseXml(document);
158}
159
150void DataSet::WriteXml(const string& fileName, const string& dataSetName) const160void DataSet::WriteXml(const string& fileName, const string& dataSetName) const
151{161{
152 xml_document document; 162 xml_document document;
@@ -162,6 +172,11 @@ void DataSet::WriteXml(vector<uint8_t>& buffer, const string& dataSetName) const · 9 unmodified lines
162 document.save(writer, " ");172 document.save(writer, " ");
163}173}
164 174
175void DataSet::WriteXml(pugi::xml_document& document, const std::string& dataSetName) const
176{
177 GenerateXml(document, dataSetName);
178}
179
165DataSetPtr DataSet::FromXml(const std::string& fileName)180DataSetPtr DataSet::FromXml(const std::string& fileName)
166{181{
167 DataSetPtr dataSet = NewSharedPtr<DataSet>();182 DataSetPtr dataSet = NewSharedPtr<DataSet>();
@@ -176,6 +191,19 @@ DataSetPtr DataSet::FromXml(const std::vector<uint8_t>& buffer) · 8 unmodified lines
176 return dataSet;191 return dataSet;
177}192}
178 193
194DataSetPtr DataSet::FromXml(const uint8_t* buffer, uint32_t length)
195{
196 DataSetPtr dataSet = NewSharedPtr<DataSet>();
197 dataSet->ReadXml(buffer, length);
198 return dataSet;}
199
200DataSetPtr DataSet::FromXml(const pugi::xml_document& document)
201{
202 DataSetPtr dataSet = NewSharedPtr<DataSet>();
203 dataSet->ReadXml(document);
204 return dataSet;
205}
206
179void DataSet::ParseXml(const xml_document& document)207void DataSet::ParseXml(const xml_document& document)
180{208{
181 // Find root node209 // Find root node

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t