vg
tools for working with variation graphs
Public Member Functions | Protected Attributes | List of all members
vg::TSVExplainer Class Reference

#include <explainer.hpp>

Inheritance diagram for vg::TSVExplainer:
vg::Explainer

Public Member Functions

 TSVExplainer (bool enabled, const std::string &name="data")
 Construct a TSVExplainer that will save a table to a file. More...
 
 ~TSVExplainer ()
 Close out the file being explained to. More...
 
void line ()
 Start a new line. Must call this before field(). More...
 
void field (const std::string &value)
 Add a field with a string value. More...
 
void field (size_t value)
 Add a field with an integral value. More...
 
- Public Member Functions inherited from vg::Explainer
 Explainer (bool enabled)
 Construct an Explainer that will save to one or more files. More...
 
virtual ~Explainer ()
 Close out the files being explained to. More...
 
 operator bool () const
 

Protected Attributes

ofstream out
 Stream being written to. More...
 
bool need_tab = false
 Whether we need a tab befroe the next value. More...
 
bool need_line = false
 Whether we need a newline before the next line. More...
 
- Protected Attributes inherited from vg::Explainer
size_t explanation_number
 What number explanation are we? Distinguishes different objects. More...
 
bool enabled
 Determines if this explainer should generate explanations. More...
 

Additional Inherited Members

- Static Public Attributes inherited from vg::Explainer
static bool save_explanations = false
 Determine if explanations should be generated. More...
 
- Protected Member Functions inherited from vg::Explainer
bool explaining () const
 Function to check if we should be explaining. More...
 
- Static Protected Attributes inherited from vg::Explainer
static std::atomic< size_t > next_explanation_number {0}
 Counter used to give different explanations their own unique filenames. More...
 

Detailed Description

Widget to log a TSV of data as an explanation.

Constructor & Destructor Documentation

◆ TSVExplainer()

vg::TSVExplainer::TSVExplainer ( bool  enabled,
const std::string &  name = "data" 
)

Construct a TSVExplainer that will save a table to a file.

◆ ~TSVExplainer()

vg::TSVExplainer::~TSVExplainer ( )

Close out the file being explained to.

Member Function Documentation

◆ field() [1/2]

void vg::TSVExplainer::field ( const std::string &  value)

Add a field with a string value.

◆ field() [2/2]

void vg::TSVExplainer::field ( size_t  value)

Add a field with an integral value.

◆ line()

void vg::TSVExplainer::line ( )

Start a new line. Must call this before field().

Member Data Documentation

◆ need_line

bool vg::TSVExplainer::need_line = false
protected

Whether we need a newline before the next line.

◆ need_tab

bool vg::TSVExplainer::need_tab = false
protected

Whether we need a tab befroe the next value.

◆ out

ofstream vg::TSVExplainer::out
protected

Stream being written to.


The documentation for this class was generated from the following files: