------------------------------------------------------------------------------
| 171 | |
| 172 | //------------------------------------------------------------------------------ |
| 173 | void vtkXMLDataParser::SeekInlineDataPosition(vtkXMLDataElement* element) |
| 174 | { |
| 175 | istream* stream = this->GetStream(); |
| 176 | if (!element->GetInlineDataPosition()) |
| 177 | { |
| 178 | // Scan for the start of the actual inline data. |
| 179 | char c = 0; |
| 180 | stream->clear(stream->rdstate() & ~ios::eofbit); |
| 181 | stream->clear(stream->rdstate() & ~ios::failbit); |
| 182 | this->SeekG(element->GetXMLByteIndex()); |
| 183 | while (stream->get(c) && (c != '>')) |
| 184 | { |
| 185 | } |
| 186 | while (stream->get(c) && vtkXMLDataElement::IsSpace(c)) |
| 187 | { |
| 188 | } |
| 189 | vtkTypeInt64 pos = this->TellG(); |
| 190 | element->SetInlineDataPosition(pos - 1); |
| 191 | } |
| 192 | |
| 193 | // Seek to the data position. |
| 194 | this->SeekG(element->GetInlineDataPosition()); |
| 195 | } |
| 196 | |
| 197 | //------------------------------------------------------------------------------ |
| 198 | void vtkXMLDataParser::EndElement(const char*) |
no test coverage detected