16 #ifndef _AGGREGATE_WAVE_MODEL_H_ 17 #define _AGGREGATE_WAVE_MODEL_H_ 64 virtual int getData(
int channel,
int start,
int count,
67 virtual int getData(
int channel,
int start,
int count,
68 double *buffer)
const;
70 virtual int getData(
int fromchannel,
int tochannel,
72 float **buffer)
const;
76 virtual void getSummaries(
int channel,
int start,
int count,
78 int &blockSize)
const;
80 virtual Range
getSummary(
int channel,
int start,
int count)
const;
82 virtual void toXml(QTextStream &out,
84 QString extraAttributes =
"")
const;
virtual Model * clone() const
Return a copy of this model.
QString getTypeName() const
Return the type of the model.
void componentModelChangedWithin(int, int)
int getSampleRate() const
Return the frame rate in frames per second.
static PowerOfSqrtTwoZoomConstraint m_zoomConstraint
std::vector< Range > RangeBlock
RangeSummarisableTimeValueModel * model
const ZoomConstraint * getZoomConstraint() const
If this model imposes a zoom constraint, i.e.
AggregateWaveModel(ChannelSpecList channelSpecs)
bool isOK() const
Return true if the model was constructed successfully.
int getChannelCount() const
Return the number of distinct channels for this model.
ModelChannelSpec getComponent(int c) const
virtual int getStartFrame() const
Return the first audio frame spanned by the model.
ChannelSpecList m_components
float getValueMinimum() const
Return the minimum possible value found in this model type.
virtual Range getSummary(int channel, int start, int count) const
Return the range from the given start frame, corresponding to the given number of underlying sample f...
virtual void getSummaries(int channel, int start, int count, RangeBlock &ranges, int &blockSize) const
Return ranges from the given start frame, corresponding to the given number of underlying sample fram...
float getValueMaximum() const
Return the minimum possible value found in this model type.
void componentModelChanged()
Model is the base class for all data models that represent any sort of data on a time scale based on ...
void componentModelCompletionChanged()
std::vector< ModelChannelSpec > ChannelSpecList
int getFrameCount() const
int getComponentCount() const
virtual int getSummaryBlockSize(int desired) const
bool isReady(int *) const
Return true if the model has finished loading or calculating all its data, for a model that is capabl...
Base class for models containing dense two-dimensional data (value against time) that may be meaningf...
void modelChangedWithin(int, int)
ZoomConstraint is a simple interface that describes a limitation on the available zoom sizes for a vi...
ModelChannelSpec(RangeSummarisableTimeValueModel *m, int c)
virtual void toXml(QTextStream &out, QString indent="", QString extraAttributes="") const
Stream this exportable object out to XML on a text stream.
virtual int getData(int channel, int start, int count, float *buffer) const
Get the specified set of samples from the given channel of the model in single-precision floating-poi...
virtual int getEndFrame() const
Return the last audio frame spanned by the model.