| 249 | |
| 250 | template<typename T> |
| 251 | void InventorFieldWriter::write( |
| 252 | const char* fieldName, |
| 253 | const std::vector<T>& fieldData, |
| 254 | InventorOutput& out |
| 255 | ) const |
| 256 | { |
| 257 | if (fieldData.empty()) { |
| 258 | return; |
| 259 | } |
| 260 | |
| 261 | if (fieldData.size() == 1) { |
| 262 | out.write() << fieldName << " "; |
| 263 | field_traits<T>::write(out.stream(), fieldData[0]) << '\n'; |
| 264 | } |
| 265 | else { |
| 266 | out.write() << fieldName << " [\n"; |
| 267 | out.increaseIndent(); |
| 268 | for (auto it : fieldData) { |
| 269 | out.write(); |
| 270 | field_traits<T>::write(out.stream(), it) << '\n'; |
| 271 | } |
| 272 | out.decreaseIndent(); |
| 273 | out.write() << "]\n"; |
| 274 | } |
| 275 | } |
| 276 | |
| 277 | template<> |
| 278 | void InventorFieldWriter::write<int>( |
no test coverage detected