14void PushAttribute(tinyxml2::XMLPrinter& printer, 
const std::string& name, 
const std::string& value) {
 
   16    printer.PushAttribute(name.c_str(), value.c_str());
 
   19void PushAttribute(tinyxml2::XMLPrinter& printer, 
const std::string& name, 
bool value) {
 
   21    std::string str = value ? 
"true" : 
"false";
 
   22    PushAttribute(printer, name, str);
 
   25template<
typename T, cgv::type::u
int32_type N>
 
   26void PushAttribute(tinyxml2::XMLPrinter& printer, 
const std::string& name, 
const cgv::math::fvec<T, N>& value) {
 
   28    PushAttribute(printer, name, cgv::math::to_string(value));
 
   34    PushAttribute(printer, name, cgv::math::to_string(vec));