| # Gaudi Framework, version v20r2
Generated: 18 Jul 2008

- Main Page
- Namespaces
- Classes
- Files
- Directories
- Related Pages

- Search for |

- File List
- File Members

# TupleObj.cpp File Reference

## Detailed Description

Implementation file for class Tuples::TupleObj.

Date:
  2004-01-23

Author:
  Vanya BELYAEV Ivan.Belyaev@itep.ru

Definition in file TupleObj.cpp.

`#include <cstdarg>`
`#include <algorithm>`
`#include <map>`
`#include "GaudiKernel/GaudiException.h"`
`#include "GaudiAlg/Tuples.h"`
`#include "GaudiAlg/TupleObj.h"`
`#include "boost/integer_traits.hpp"`
`#include "boost/static_assert.hpp"`

Include dependency graph for TupleObj.cpp:

Go to the source code of this file.

## Namespaces
namespace | Tuples
namespace | Tuples::Local
## Classes
class | Tuples::Local::Counter
## Typedefs
typedef std::vector< std::string > | Tokens
| useful typedef
## Functions
| Tuples::BOOST_STATIC_ASSERT (boost::integer_traits< int >::is_specialized)
| Tuples::BOOST_STATIC_ASSERT (boost::integer_traits< short >::is_specialized)
| Tuples::BOOST_STATIC_ASSERT (boost::integer_traits< unsigned short >::is_specialized)
| Tuples::BOOST_STATIC_ASSERT (boost::integer_traits< char >::is_specialized)
| Tuples::BOOST_STATIC_ASSERT (boost::integer_traits< unsigned char >::is_specialized)
| Tuples::BOOST_STATIC_ASSERT (sizeof(int)<=sizeof(long))
| Tuples::BOOST_STATIC_ASSERT (sizeof(int)<=sizeof(unsigned long))
| Tuples::BOOST_STATIC_ASSERT (sizeof(int)<=sizeof(unsigned int))
| Tuples::BOOST_STATIC_ASSERT (sizeof(short)<=sizeof(int))
| Tuples::BOOST_STATIC_ASSERT (sizeof(unsigned short)<=sizeof(int))
| Tuples::BOOST_STATIC_ASSERT (sizeof(char)<=sizeof(int))
| Tuples::BOOST_STATIC_ASSERT (sizeof(signed char)<=sizeof(int))
| Tuples::BOOST_STATIC_ASSERT (sizeof(unsigned char)<=sizeof(int))
| Tuples::BOOST_STATIC_ASSERT (boost::integer_traits< int >::const_max<=boost::integer_traits< long >::const_max)
| Tuples::BOOST_STATIC_ASSERT (boost::integer_traits< int >::const_min >=boost::integer_traits< long >::const_min)
| Tuples::BOOST_STATIC_ASSERT (boost::integer_traits< short >::const_max<=boost::integer_traits< int >::const_max)
| Tuples::BOOST_STATIC_ASSERT (boost::integer_traits< short >::const_min >=boost::integer_traits< int >::const_min)
| Tuples::BOOST_STATIC_ASSERT (boost::integer_traits< unsigned short >::const_max<=(unsigned int) boost::integer_traits< int >::const_max)
| Tuples::BOOST_STATIC_ASSERT (boost::integer_traits< char >::const_max<=boost::integer_traits< int >::const_max)
| Tuples::BOOST_STATIC_ASSERT (boost::integer_traits< char >::const_min >=boost::integer_traits< int >::const_min)
| Tuples::BOOST_STATIC_ASSERT (boost::integer_traits< unsigned char >::const_max<=(unsigned int) boost::integer_traits< int >::const_max)
| Tuples::BOOST_STATIC_ASSERT (31==boost::integer_traits< int >::digits)
| Tuples::BOOST_STATIC_ASSERT (std::numeric_limits< float >::is_specialized)
size_t | tokenize (const std::string &value, Tokens &tokens, const std::string &separators=" ")
| Very simple tokenizer for TupleObj.
## Variables
static Counter | Tuples::Local::s_InstanceCounter (" Create/Destroy (mis)balance ")
| The instance counter for all 'TupleObj' based classes.

## Typedef Documentation

typedef std::vector<std::string> Tokens`[static]`

useful typedef

Definition at line 219 of file TupleObj.cpp.

## Function Documentation

size_t @74::tokenize | ( | const std::string & | value,
|  | Tokens & | tokens,
|  | const std::string & | separators = `" "` |
| ) |  |  | `[static]`

Very simple tokenizer for TupleObj.

Author:
  Vanya Belyaev Ivan.Belyaev@itep.ru

Date:
  2002-07-14

Definition at line 224 of file TupleObj.cpp.

References std::basic_string< _CharT, _Traits, _Alloc >::begin(), std::vector< _Tp, _Alloc >::clear(), std::basic_string< _CharT, _Traits, _Alloc >::end(), std::find_first_of(), std::vector< _Tp, _Alloc >::push_back(), and std::vector< _Tp, _Alloc >::size().

Referenced by Tuples::TupleObj::fill().

    00227   {
    00228     // reset the existing tokens
    00229     tokens.clear();
    00230     if( value       .empty () ) { return tokens.size () ; }
    00231     std::string::const_iterator it1 = value.begin() ;
    00232     std::string::const_iterator it2 = value.begin() ;
    00233     while( value.end() != it1 && value.end() != it2 )
    00234     {
    00235       it2 = std::find_first_of( it1                  ,
    00236                                 value.end         () ,
    00237                                 separators.begin  () ,
    00238                                 separators.end    () ) ;
    00239       if( it2 != it1 )
    00240       {
    00241         std::string aux( value , it1 - value.begin() , it2 - it1 ) ;
    00242         tokens.push_back( aux ) ;
    00243         it1  = it2 ;
    00244       }
    00245       else { ++it1 ; }
    00246
    00247     }
    00248     return tokens.size();
    00249   };