FACT++  1.0
string Configuration::VarAsStr ( const po::variable_value &  v) const
private

Definition at line 572 of file Configuration.cc.

References str.

Referenced by GetOptions(), Max(), and PrintOptions().

573 {
574  if (v.value().type()==typeid(bool))
575  return v.as<bool>() ? "yes ": "no";
576 
577  if (v.value().type()==typeid(string))
578  return v.as<string>();
579 
580  if (v.value().type()==typeid(int16_t))
581  return to_string((long long int)v.as<int16_t>());
582 
583  if (v.value().type()==typeid(int32_t))
584  return to_string((long long int)v.as<int32_t>());
585 
586  if (v.value().type()==typeid(int64_t))
587  return to_string((long long int)v.as<int64_t>());
588 
589  if (v.value().type()==typeid(uint16_t))
590  return to_string((long long unsigned int)v.as<uint16_t>());
591 
592  if (v.value().type()==typeid(uint32_t))
593  return to_string((long long unsigned int)v.as<uint32_t>());
594 
595  if (v.value().type()==typeid(uint64_t))
596  return to_string((long long unsigned int)v.as<uint64_t>());
597 
598  if (v.value().type()==typeid(float))
599  return to_string((long double)v.as<float>());
600 
601  if (v.value().type()==typeid(double))
602  return to_string((long double)v.as<double>());
603 
604  if (v.value().type()==typeid(vector<string>))
605  return VecAsStr<string>(v);
606 
607  if (v.value().type()==typeid(vector<int16_t>))
608  return VecAsStr<int16_t>(v);
609 
610  if (v.value().type()==typeid(vector<int32_t>))
611  return VecAsStr<int32_t>(v);
612 
613  if (v.value().type()==typeid(vector<int64_t>))
614  return VecAsStr<int64_t>(v);
615 
616  if (v.value().type()==typeid(vector<uint16_t>))
617  return VecAsStr<uint16_t>(v);
618 
619  if (v.value().type()==typeid(vector<uint32_t>))
620  return VecAsStr<uint32_t>(v);
621 
622  if (v.value().type()==typeid(vector<uint64_t>))
623  return VecAsStr<uint64_t>(v);
624 
625  if (v.value().type()==typeid(vector<float>))
626  return VecAsStr<float>(v);
627 
628  if (v.value().type()==typeid(vector<double>))
629  return VecAsStr<double>(v);
630 
631  ostringstream str;
632  str << hex << setfill('0') << "0x";
633  if (v.value().type()==typeid(Hex<uint16_t>))
634  str << setw(4) << v.as<Hex<uint16_t>>();
635 
636  if (v.value().type()==typeid(Hex<uint32_t>))
637  str << setw(8) << v.as<Hex<uint32_t>>();
638 
639  if (v.value().type()==typeid(Hex<uint64_t>))
640  str << setw(16) << v.as<Hex<uint64_t>>();
641 
642  return str.str();
643 }
char str[80]
Definition: test_client.c:7

+ Here is the caller graph for this function: