ProteoWizard
Public Types | Public Member Functions | List of all members
pwiz::analysis::IDemultiplexer Class Referenceabstract

Interface for calculating demultiplexing scheme. More...

#include <IDemultiplexer.hpp>

Inheritance diagram for pwiz::analysis::IDemultiplexer:
pwiz::analysis::MSXDemultiplexer pwiz::analysis::OverlapDemultiplexer

Public Types

typedef boost::shared_ptr< IDemultiplexerptr
 Shared pointer definition.
 
typedef boost::shared_ptr< const IDemultiplexerconst_ptr
 Constant shared pointer definition.
 

Public Member Functions

virtual void Initialize (msdata::SpectrumList_const_ptr slc, IPrecursorMaskCodec::const_ptr pmc)=0
 Initializes the demultiplexer using the demux scheme provided by an IPrecursorMaskCodec.
 
virtual void BuildDeconvBlock (size_t index, const std::vector< size_t > &muxIndices, DemuxTypes::MatrixPtr &masks, DemuxTypes::MatrixPtr &signal)=0
 Translates a spectrum into a set of matrices to be solved by NNLS.
 
virtual void GetMatrixBlockIndices (size_t indexToDemux, std::vector< size_t > &muxIndices, double demuxBlockExtra=0.0) const =0
 Figures out which spectra to include in the system of equations to demux.
 
virtual const std::vector< size_t > & SpectrumIndices () const =0
 Returns the indices to the demultiplexed windows in the solution matrix corresponding to the windows extracted from the spectrum whose index was provided to BuildDeconvBlock()
 
virtual ~IDemultiplexer ()
 

Detailed Description

Interface for calculating demultiplexing scheme.

Definition at line 29 of file IDemultiplexer.hpp.

Member Typedef Documentation

◆ ptr

Shared pointer definition.

Definition at line 34 of file IDemultiplexer.hpp.

◆ const_ptr

Constant shared pointer definition.

Definition at line 37 of file IDemultiplexer.hpp.

Constructor & Destructor Documentation

◆ ~IDemultiplexer()

virtual pwiz::analysis::IDemultiplexer::~IDemultiplexer ( )
inlinevirtual

Definition at line 69 of file IDemultiplexer.hpp.

69{}

Member Function Documentation

◆ Initialize()

virtual void pwiz::analysis::IDemultiplexer::Initialize ( msdata::SpectrumList_const_ptr  slc,
IPrecursorMaskCodec::const_ptr  pmc 
)
pure virtual

Initializes the demultiplexer using the demux scheme provided by an IPrecursorMaskCodec.

Implemented in pwiz::analysis::OverlapDemultiplexer, and pwiz::analysis::MSXDemultiplexer.

◆ BuildDeconvBlock()

virtual void pwiz::analysis::IDemultiplexer::BuildDeconvBlock ( size_t  index,
const std::vector< size_t > &  muxIndices,
DemuxTypes::MatrixPtr masks,
DemuxTypes::MatrixPtr signal 
)
pure virtual

Translates a spectrum into a set of matrices to be solved by NNLS.

Parameters
[in]indexIndex of the requested spectrum to be demultiplexed
[in]muxIndicesThe indices to mulitplexed spectra to use for demultiplexing. These spectra should be near in time to the spectrum to demultiplex and there should be enough to provide a unique solution.
[out]masksThe design matrix with rows corresponding to individual spectra and columns corresponding to MS1 isolation windows
[out]signalA transition (MS1 isolation -> MS2 point/centroid) to be deconvolved formatted as a column vector (or a set of transitions formatted as a matrix)

Implemented in pwiz::analysis::MSXDemultiplexer, and pwiz::analysis::OverlapDemultiplexer.

◆ GetMatrixBlockIndices()

virtual void pwiz::analysis::IDemultiplexer::GetMatrixBlockIndices ( size_t  indexToDemux,
std::vector< size_t > &  muxIndices,
double  demuxBlockExtra = 0.0 
) const
pure virtual

Figures out which spectra to include in the system of equations to demux.

This skips over MS1 spectra and returns the indices of a range of MS2 spectra that can be used to demultiplex the chosen spectrum. This handles the case where the chosen spectrum is at the beginning or end of a file and chooses a sufficient number of nearby MS2 spectra accordingly. More indices will be included if the user has chosen to add additional demux blocks.

Postcondition
The returned indices are sorted
Parameters
[in]indexToDemuxIndex of the requested spectrum
[out]muxIndicesIndices of the multiplexed MS2 spectra to be used for demultiplexing
[in]demuxBlockExtraAmount to pad the block size by

Implemented in pwiz::analysis::MSXDemultiplexer, and pwiz::analysis::OverlapDemultiplexer.

◆ SpectrumIndices()

virtual const std::vector< size_t > & pwiz::analysis::IDemultiplexer::SpectrumIndices ( ) const
pure virtual

Returns the indices to the demultiplexed windows in the solution matrix corresponding to the windows extracted from the spectrum whose index was provided to BuildDeconvBlock()

Returns
Returns the demux indices for the solved spectrum

Implemented in pwiz::analysis::MSXDemultiplexer, and pwiz::analysis::OverlapDemultiplexer.


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