4#include "rdbModel/Tables/Column.h"
5#include "facilities/Timestamp.h"
6#include "rdbModel/Tables/Datatype.h"
7#include "rdbModel/Tables/Table.h"
26 return m_type->okValue( val );
30 return m_type->isCompatible( otherCol->m_type );
39 if ( interpType.compare( std::string(
"time" ) ) != 0 )
return false;
44 if ( val.compare( std::string(
"NOW" ) ) != 0 )
return false;
58 if ( m_sorted )
return;
61 std::sort( m_fields.begin(), m_fields.end(), cmp );
66 unsigned nField = m_fields.size();
68 unsigned maxI = nField;
70 unsigned guess = maxI / 2;
71 unsigned oldGuess = nField;
73 int cmp = colname.compare( m_fields[guess].m_colname );
77 if ( guess == oldGuess )
return 0;
88 guess = ( minI + maxI ) / 2;
89 cmp = colname.compare( m_fields[guess].m_colname );
91 return &m_fields[guess];
94 void Row::regroup( std::vector<std::string>& colNames, std::vector<std::string>& colVals,
95 std::vector<std::string>& nullCols )
const {
96 unsigned nFields = m_fields.size();
97 colNames.reserve( nFields );
98 colVals.reserve( nFields );
100 for (
unsigned i = 0; i < nFields; i++ )
102 if ( m_fields[i].m_null ) { nullCols.push_back( m_fields[i].m_colname ); }
105 colNames.push_back( m_fields[i].m_colname );
106 colVals.push_back( m_fields[i].m_val );
**********Class see also m_nmax DOUBLE PRECISION m_amel DOUBLE PRECISION m_x2 DOUBLE PRECISION m_alfinv DOUBLE PRECISION m_Xenph INTEGER m_KeyWtm INTEGER m_idyfs DOUBLE PRECISION m_zini DOUBLE PRECISION m_q2 DOUBLE PRECISION m_Wt_KF DOUBLE PRECISION m_WtCut INTEGER m_KFfin *COMMON c_KarLud $ !Input CMS energy[GeV] $ !CMS energy after beam spread beam strahlung[GeV] $ !Beam energy spread[GeV] $ !z boost due to beam spread $ !electron beam mass *ff pair spectrum $ !minimum v
std::string getString() const
Return string representation of time, not including nanoseconds;.
bool isAutoIncrement() const
const std::string & getTableName() const
Visitor::VisitorState accept(Visitor *v)
bool isCompatible(const Column *otherCol) const
Return true if otherCol and this have compatible datatypes.
bool interpret(const std::string &interpType, std::string &val)
bool okValue(const std::string &val, bool set=true) const
Function object used to sort FieldValPar objects by column name.
FieldVal * find(std::string colname)
void regroup(std::vector< std::string > &colNames, std::vector< std::string > &colVals, std::vector< std::string > &nullCols) const
Reorder information suitable for Connection::insert.