AOFlagger
Public Member Functions | Friends | List of all members
aoflagger::QualityStatistics Class Reference

Statistics that can be collected online and saved to a measurement set. More...

#include <aoflagger.h>

Public Member Functions

 QualityStatistics ()
 
 QualityStatistics (const QualityStatistics &sourceQS)
 Copy the object. This is fast; only references are copied.
 
 QualityStatistics (QualityStatistics &&sourceQS)
 Move construct the object. More...
 
 ~QualityStatistics ()
 Destruct the object. Data is destroyed if no more references exist.
 
QualityStatisticsoperator+= (const QualityStatistics &rhs)
 Combine the statistics from the given object with the statistics in this object. More...
 
QualityStatisticsoperator= (const QualityStatistics &sourceQS)
 Assign to this object. This is fast; only references are copied.
 
QualityStatisticsoperator= (QualityStatistics &&sourceQS)
 Move-assign this object. This is fast; only references are moved. More...
 

Friends

class AOFlagger
 

Detailed Description

Statistics that can be collected online and saved to a measurement set.

It is useful to collect some statistics during flagging, because all data goes through memory at highest resolution. This class contains the collected statistics and some meta data required for collecting. It can be created with AOFlagger::MakeQualityStatistics(). Statistics can be added to it with AOFlagger::CollectStatistics(), and saved to disk with AOFlagger::WriteStatistics().

This class does not allow viewing or modifying statistics, it only contains the most basic form to collect statistics during flagging and writing them in the (well-defined) quality statistic tables format. These statistics can be viewed interactively with the aoqplot tool.

Collecting statistics is not as expensive as flagging, but still takes some time, so it is recommended to use multiple threads for collecting as well. This class is however not thread save, but it is okay to use different QualityStatistics objects from different thread contexts. During finalization, the different objects can be combined with the operator+=() method, and then in full written to the measurement set.

Constructor & Destructor Documentation

◆ QualityStatistics() [1/2]

aoflagger::QualityStatistics::QualityStatistics ( )

Construct a QualityStatistics with null state.

An object created by this constructor can only be assigned to.

Since
Version 2.13

◆ QualityStatistics() [2/2]

aoflagger::QualityStatistics::QualityStatistics ( QualityStatistics &&  sourceQS)

Move construct the object.

Since
Version 2.10

Member Function Documentation

◆ operator+=()

QualityStatistics& aoflagger::QualityStatistics::operator+= ( const QualityStatistics rhs)

Combine the statistics from the given object with the statistics in this object.

This is a relative expensive operation, so should only be used scarsely. It can be used to combine the results of different threads, as explained in the class description.

It is okay to combine quality statistics with different meta data (scan time count, channel count, etc.). When using this object again during collecting (see AOFlagger::CollectStatistics()), after combining it with another object, it will still use the meta data it was initialized with.

◆ operator=()

QualityStatistics& aoflagger::QualityStatistics::operator= ( QualityStatistics &&  sourceQS)

Move-assign this object. This is fast; only references are moved.

Since
Version 2.10

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