source: src/Actions/toCLIString.hpp@ 97dff0

Last change on this file since 97dff0 was 27d0bc, checked in by Frederik Heber <heber@…>, 12 years ago

Extended and fixed toCLIString for RealSpaceMatrix, element and vector<>.

  • Property mode set to 100644
File size: 1.6 KB
Line 
1/*
2 * toCLIString.hpp
3 *
4 * Created on: Aug 23, 2013
5 * Author: heber
6 */
7
8#ifndef TOCLISTRING_HPP_
9#define TOCLISTRING_HPP_
10
11// include config.h
12#ifdef HAVE_CONFIG_H
13#include <config.h>
14#endif
15
16#include <boost/filesystem/path.hpp>
17
18#include <string>
19#include <sstream>
20#include <vector>
21
22class element;
23class RealSpaceMatrix;
24class Vector;
25
26template <typename T>
27inline
28const std::string toCLIString( const T& _value)
29{
30 std::stringstream output;
31 output << _value;
32 return output.str();
33}
34
35template <typename T>
36inline
37const std::string toCLIString( const T *& _value)
38{
39 std::stringstream output;
40 output << toCLIString(*_value);
41 return output.str();
42}
43
44template <typename T>
45inline
46const std::string toCLIString( const T * _value)
47{
48 std::stringstream output;
49 output << toCLIString(*_value);
50 return output.str();
51}
52
53template <typename T>
54inline
55const std::string toCLIString( const std::vector<T>& _values)
56{
57 std::stringstream output;
58 for (typename std::vector<T>::const_iterator iter = _values.begin();
59 iter != _values.end();
60 ++iter) {
61 const T& _value = *iter;
62 if (iter != _values.begin())
63 output << " ";
64 output << toCLIString(_value);
65 }
66 return output.str();
67}
68
69template <> const std::string toCLIString( const element & _value);
70
71template <> const std::string toCLIString( const boost::filesystem::path & _value);
72
73template <> const std::string toCLIString( const RealSpaceMatrix& _value);
74
75template <> const std::string toCLIString( const Vector& _value);
76
77template <> const std::string toCLIString( const std::string& _value);
78
79#endif /* TOCLISTRING_HPP_ */
Note: See TracBrowser for help on using the repository browser.