generic_layout< q_collapsed_metric, 5 > Struct Template Reference
Inheritance diagram for generic_layout< q_collapsed_metric, 5 >:
default_layout< 5 > generic_layout< q_collapsed_metric, 6 >

Public Types

enum  { RECORD_SIZE = sizeof(count_t)*3, TOTAL_RECORD_SIZE = RECORD_SIZE+sizeof(metric_id_t), ALT_RECORD_SIZE =TOTAL_RECORD_SIZE+sizeof(median_t) }
 
typedef layout::base_cycle_metric< ::uint16_t > metric_id_t
 
typedef ::uint32_t count_t
 
typedef float median_t
 
typedef ::uint8_t bool_t
 
typedef ::uint8_t bin_count_t
 
typedef ::uint8_t bin_t
 
- Public Types inherited from default_layout< 5 >
enum  
 
typedef ::uint8_t record_size_t
 
typedef ::uint8_t version_t
 

Static Public Member Functions

template<class Stream , class Metric , class Header >
static std::streamsize map_stream (Stream &stream, Metric &metric, Header &header, const bool)
 
static record_size_t compute_size (const q_collapsed_metric::header_type &header)
 
template<class Stream , class Header >
static std::streamsize map_stream_for_header (Stream &stream, Header &header)
 
static record_size_t compute_header_size (const q_collapsed_metric::header_type &)
 
template<class Stream >
static record_size_t map_stream_record_size (Stream &, record_size_t)
 
- Static Public Member Functions inherited from default_layout< 5 >
static std::streamsize map_stream_for_header (Stream &, Header &)
 
static RecordSize map_stream_record_size (Stream &stream, RecordSize record_size)
 
static bool skip_metric (const Metric &metric)
 
static bool is_valid (const LayoutId &id)
 

Detailed Description

template<>
struct illumina::interop::io::generic_layout< q_collapsed_metric, 5 >

Collapsed Q-score Metric Record Layout Version 5

This class provides an interface to reading the collapsed q-metric file:

  • InterOp/QMetrics2030.bin
  • InterOp/QMetrics2030Out.bin

The class takes two template arguments:

 1. Metric Type: q_collapsed_metric
 2. Version: 5

Member Typedef Documentation

typedef ::uint8_t bin_count_t

Bin count type

typedef ::uint8_t bin_t

Bin type

typedef ::uint8_t bool_t

Bool type

typedef ::uint32_t count_t

Histogram count type

typedef float median_t

Histogram count type

typedef layout::base_cycle_metric< ::uint16_t > metric_id_t

Metric ID type

Member Enumeration Documentation

anonymous enum
Enumerator
RECORD_SIZE 

Define the size of the record without the ID

TOTAL_RECORD_SIZE 

Define the size of the record with the ID

ALT_RECORD_SIZE 

Alternative record size

Member Function Documentation

static record_size_t compute_header_size ( const q_collapsed_metric::header_type )
inlinestatic

Compute header size

Returns
header size
static record_size_t compute_size ( const q_collapsed_metric::header_type header)
inlinestatic

Compute the layout size

Parameters
headercollapsed q metric header
Returns
size of the record
static std::streamsize map_stream ( Stream &  stream,
Metric &  metric,
Header &  header,
const bool   
)
inlinestatic

Map reading/writing to stream

Reading and writing are symmetric operations, map it once

Parameters
streaminput/output stream
metricsource/destination metric
headermetric set header
Returns
number of bytes read or total number of bytes written
static std::streamsize map_stream_for_header ( Stream &  stream,
Header &  header 
)
inlinestatic

Map reading/writing a header to a stream

Reading and writing are symmetric operations, map it once

Parameters
streaminput/output stream
headersource/destination header
Returns
number of bytes read or total number of bytes written
static record_size_t map_stream_record_size ( Stream &  ,
record_size_t   
)
inlinestatic

Does not read/write record size, this is done in map_stream_for_header

Returns
size of the record

The documentation for this struct was generated from the following file: