4 #include <sio/io_device.h> 
    5 #include <sio/version.h> 
   11     SIO_DATA( device , &nIntParameters , 1 ) ;
 
   12     for(
int i=0; i< nIntParameters ; i++ ) {
 
   14       SIO_SDATA( device,  key ) ; 
 
   16       SIO_DATA( device , &nInt , 1 ) ;
 
   18       for(
int j=0; j< nInt ; j++ ) {
 
   19            SIO_DATA( device , &intVec[j]  , 1 ) ;
 
   23     int nFloatParameters ;
 
   24     SIO_DATA( device , &nFloatParameters , 1 ) ;
 
   25     for(
int i=0; i< nFloatParameters ; i++ ) {
 
   27       SIO_SDATA( device,  key ) ; 
 
   29       SIO_DATA( device , &nFloat , 1 ) ;
 
   31       for(
int j=0; j< nFloat ; j++ ) {
 
   32           SIO_DATA( device , &floatVec[j]  , 1 ) ;
 
   36     if( vers > SIO_VERSION_ENCODE( 2, 16 )   ) {
 
   38       int nDoubleParameters ;
 
   39       SIO_DATA( device , &nDoubleParameters , 1 ) ;
 
   40       for(
int i=0; i< nDoubleParameters ; i++ ) {
 
   42     SIO_SDATA( device,  key ) ;
 
   44     SIO_DATA( device , &nDouble , 1 ) ;
 
   46     for(
int j=0; j< nDouble ; j++ ) {
 
   47       SIO_DATA( device , &doubleVec[j]  , 1 ) ;
 
   52     int nStringParameters ;
 
   53     SIO_DATA( device , &nStringParameters , 1 ) ;
 
   54     for(
int i=0; i< nStringParameters ; i++ ) {
 
   56       SIO_SDATA( device,  key ) ; 
 
   58       SIO_DATA( device , &nString , 1 ) ;
 
   60       for(
int j=0; j< nString ; j++ ){
 
   62         SIO_SDATA( device,  val ) ; 
 
   72     SIO_DATA( device , &nIntParameters , 1 ) ;
 
   73     for(
int i=0; i< nIntParameters ; i++ ) {
 
   76       int nInt  = intVec.
size()  ;
 
   77         SIO_SDATA( device, intKeys[i]  ) ;
 
   78         SIO_DATA( device , &nInt , 1 ) ;
 
   79           for(
int j=0; j< nInt ; j++ ) {
 
   80             SIO_SDATA( device, intVec[j]  ) ;
 
   85     SIO_DATA( device , &nFloatParameters , 1 ) ;
 
   86     for(
int i=0; i< nFloatParameters ; i++ ) {
 
   89       int nFloat  = floatVec.
size()  ;     
 
   90         SIO_SDATA( device, floatKeys[i]  ) ;
 
   91         SIO_DATA( device , &nFloat , 1 ) ;
 
   92         for(
int j=0; j< nFloat ; j++ ){
 
   93           SIO_SDATA( device, floatVec[j]  ) ;
 
   98     SIO_DATA( device , &nDoubleParameters , 1 ) ;
 
   99     for(
int i=0; i< nDoubleParameters ; i++ ) {
 
  102       int nDouble  = doubleVec.
size()  ;     
 
  103       SIO_SDATA( device, doubleKeys[i]  ) ;
 
  104       SIO_DATA( device , &nDouble , 1 ) ;
 
  105       for(
int j=0; j< nDouble ; j++ ){
 
  106     SIO_SDATA( device, doubleVec[j]  ) ;
 
  111     SIO_DATA( device , &nStringParameters , 1 ) ;
 
  112     for(
int i=0; i< nStringParameters ; i++ ){
 
  115       int nString  = stringVec.
size()  ;
 
  116         SIO_SDATA( device, stringKeys[i]  ) ;
 
  117         SIO_DATA( device , &nString , 1 ) ;
 
  118         for(
int j=0; j< nString ; j++ ){
 
  119           SIO_SDATA( device, stringVec[j]  ) ;
 
virtual DoubleVec & getDoubleVals(const std::string &key, DoubleVec &values) const =0
Adds all double values for the given key to values. 
 
static void write(sio::write_device &device, const EVENT::LCParameters ¶ms)
Writes lcio objects to an SIO stream. 
 
virtual const StringVec & getIntKeys(StringVec &keys) const =0
Returns a list of all keys of integer parameters. 
 
virtual const StringVec & getStringKeys(StringVec &keys) const =0
Returns a list of all keys of string parameters. 
 
virtual const StringVec & getDoubleKeys(StringVec &keys) const =0
Returns a list of all keys of double parameters. 
 
Simple interface to store generic named parameters of type int, float and string. ...
 
virtual void setValues(const std::string &key, const IntVec &values)=0
Set integer values for the given key. 
 
virtual const StringVec & getFloatKeys(StringVec &keys) const =0
Returns a list of all keys of float parameters. 
 
virtual StringVec & getStringVals(const std::string &key, StringVec &values) const =0
Adds all string values for the given key to values. 
 
static void read(sio::read_device &device, EVENT::LCParameters ¶ms, sio::version_type vers)
Reads objects from an SIO stream. 
 
virtual IntVec & getIntVals(const std::string &key, IntVec &values) const =0
Adds all integer values for the given key to values. 
 
virtual FloatVec & getFloatVals(const std::string &key, FloatVec &values) const =0
Adds all float values for the given key to values.