CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes

toa Class Reference

#include <ioutils.h>

List of all members.

Public Member Functions

const char * operator() (const unsigned short int &c) const
template<typename T >
const char * operator() (const std::vector< T > &v) const
const char * operator() (const std::string &c) const
const char * operator() (const char *c) const
const char * operator() (const short int &c) const
const char * operator() (const double &c) const
const char * operator() (const float &c) const
const char * operator() (bool c) const
const char * operator() (const int &c) const
const char * operator() (const unsigned int &c) const
const char * operator() (const char c[], int n) const
const char * operator() (const unsigned long &c) const
const char * operator() (const long &c) const
 toa ()
 ~toa ()

Private Member Functions

void operator= (const toa &)
std::ostringstream & oss () const
 toa (const toa &)

Static Private Member Functions

static std::string & localS ()

Private Attributes

std::ostringstream oss_

Detailed Description

a simple class to write ints, floats and doubles in chars.

Usage as in: string mystring; ... ; mystring += toa()(4.);

Definition at line 94 of file ioutils.h.


Constructor & Destructor Documentation

toa::toa ( ) [inline]

Definition at line 98 of file ioutils.h.

{}
toa::~toa ( )

Definition at line 32 of file ioutils.cc.

          {
}
toa::toa ( const toa ) [inline, private]

Definition at line 129 of file ioutils.h.

{}

Member Function Documentation

std::string & toa::localS ( ) [static, private]

Definition at line 36 of file ioutils.cc.

Referenced by operator()().

                        {
  static boost::thread_specific_ptr<std::string> local_s;
  if (!local_s.get()) local_s.reset(new std::string);
  return *local_s;
}
const char* toa::operator() ( const short int &  c) const [inline]

Definition at line 103 of file ioutils.h.

References operator()().

Referenced by operator()().

{ return operator()(int(c));}
const char * toa::operator() ( const int &  c) const

Definition at line 42 of file ioutils.cc.

References trackerHits::c, localS(), and oss().

                                                {
  oss() << c;
#ifdef CMS_CHAR_STREAM
  oss() << ends;
#endif
  localS() = oss().str();
  return localS().c_str();
}
const char* toa::operator() ( const long &  c) const [inline]

Definition at line 105 of file ioutils.h.

References operator()().

Referenced by operator()().

{ return operator()(int(c));}
template<typename T >
const char* toa::operator() ( const std::vector< T > &  v) const [inline]

Definition at line 115 of file ioutils.h.

References filterCSVwithJSON::copy, localS(), and oss().

                                                        { 
    std::ostream_iterator<T > oi(oss()," ");
    std::copy(v.begin(),v.end(),oi);
    localS() = oss().str();
    return localS().c_str();
  }
const char* toa::operator() ( const std::string &  c) const [inline]

Definition at line 113 of file ioutils.h.

{ return c.c_str();}
const char* toa::operator() ( const char *  c) const [inline]

Definition at line 112 of file ioutils.h.

References trackerHits::c.

{ return c;}
const char * toa::operator() ( const char  c[],
int  n 
) const

Definition at line 70 of file ioutils.cc.

References localS().

                                                          {
  localS().assign(c,n);
  return localS().c_str();
}
const char* toa::operator() ( const float &  c) const [inline]

Definition at line 109 of file ioutils.h.

References operator()().

Referenced by operator()().

{ return operator()(double(c));}
const char * toa::operator() ( const double &  c) const

Definition at line 61 of file ioutils.cc.

References trackerHits::c, localS(), and oss().

                                                   {
  oss() << c;
#ifdef CMS_CHAR_STREAM
  oss() << ends;
#endif
  localS() = oss().str();
  return localS().c_str();
}
const char* toa::operator() ( const unsigned long &  c) const [inline]

Definition at line 104 of file ioutils.h.

References operator()().

Referenced by operator()().

{ return operator()(int(c));}
const char * toa::operator() ( bool  c) const

Definition at line 51 of file ioutils.cc.

References trackerHits::c, localS(), and oss().

                                           {
  oss() << std::setiosflags(std::ios::boolalpha) << c;
#ifdef CMS_CHAR_STREAM
  oss() << ends;
#endif
  localS() = oss().str();
  return localS().c_str();
}
const char* toa::operator() ( const unsigned int &  c) const [inline]

Definition at line 106 of file ioutils.h.

References operator()().

Referenced by operator()().

{ return operator()(int(c));}
const char* toa::operator() ( const unsigned short int &  c) const [inline]

Definition at line 102 of file ioutils.h.

References operator()().

Referenced by operator()().

{ return operator()(int(c));}
void toa::operator= ( const toa ) [inline, private]

Definition at line 130 of file ioutils.h.

{}
std::ostringstream& toa::oss ( ) const [inline, private]

Definition at line 124 of file ioutils.h.

References oss_.

Referenced by operator()().

{ return oss_;}

Member Data Documentation

std::ostringstream toa::oss_ [mutable, private]

Definition at line 123 of file ioutils.h.

Referenced by oss().