table_populator.h File Reference

Go to the source code of this file.

Classes

class  table_populator
 

Namespaces

 illumina
 
 illumina::interop
 
 illumina::interop::logic
 
 illumina::interop::logic::table
 

Macros

#define INTEROP_TUPLE7(Ignore1, Ignore2, Method, Param, Ignore4, Ignore5, Ignored6)   populate_##Method##Param(metric, read, static_cast<uint_t>(q20_idx), static_cast<uint_t>(q30_idx), naming_method, columns, data_it, data_end);
 
#define INTEROP_TUPLE7(Id, Metric, Method, Param, Type, Kind, Round)
 

Detailed Description

Logic to populate the imaging table

Date
7/22/16
Version
1.0

Macro Definition Documentation

#define INTEROP_TUPLE7 (   Ignore1,
  Ignore2,
  Method,
  Param,
  Ignore4,
  Ignore5,
  Ignored6 
)    populate_##Method##Param(metric, read, static_cast<uint_t>(q20_idx), static_cast<uint_t>(q30_idx), naming_method, columns, data_it, data_end);
#define INTEROP_TUPLE7 (   Id,
  Metric,
  Method,
  Param,
  Type,
  Kind,
  Round 
)
Value:
template<typename OutputIterator>\
static void populate_##Method##Param(const model:: Metric& metric,\
const size_t Read,\
const uint_t Q20,\
const uint_t Q30,\
const constants::tile_naming_method NamingConvention,\
const std::vector<size_t>& columns,\
OutputIterator data_it, OutputIterator data_end)\
{\
INTEROP_ASSERT( model::table:: Id##Column < columns.size() ); \
const size_t index = columns[model::table:: Id##Column];\
if(!is_valid(index)) return; /*Missing column */ \
copy_to(data_it+index, data_end, call_adapter(metric, Param, &model:: Metric::Method), Round);\
(void)Q20;(void)Q30;(void)NamingConvention;(void)Read;\
}\
template<class MetricType, typename OutputIterator>\
static void populate_##Method##Param(const MetricType&,\
const size_t,\
const uint_t,\
const uint_t,\
const constants::tile_naming_method,\
const std::vector<size_t>&,\
OutputIterator,OutputIterator){}
R call_adapter(const T &obj, P2 param1, R(T::*func)(P1) const)
Definition: table_util.h:26
tile_naming_method
Definition: enums.h:294