svcore
1.9
|
#include <EditableDenseThreeDimensionalModel.h>
Public Types | |
enum | CompressionType { NoCompression, BasicMultirateCompression } |
typedef QVector< float > | Column |
enum | { SortRole = Qt::UserRole } |
enum | SortType { SortNumeric, SortAlphabetical } |
Public Slots | |
void | aboutToDelete () |
void | sourceModelAboutToBeDeleted () |
Signals | |
void | modelChanged () |
Emitted when a model has been edited (or more data retrieved from cache, in the case of a cached model that generates slowly) | |
void | modelChangedWithin (int startFrame, int endFrame) |
Emitted when a model has been edited (or more data retrieved from cache, in the case of a cached model that generates slowly) | |
void | completionChanged () |
Emitted when some internal processing has advanced a stage, but the model has not changed externally. | |
void | ready () |
Emitted when internal processing is complete (i.e. | |
void | alignmentCompletionChanged () |
Emitted when the completion percentage changes for the calculation of this model's alignment model. | |
void | aboutToBeDeleted () |
Emitted when something notifies this model (through calling aboutToDelete() that it is about to delete it. | |
Public Member Functions | |
EditableDenseThreeDimensionalModel (int sampleRate, int resolution, int yBinCount, CompressionType compression, bool notifyOnAdd=true) | |
virtual bool | isOK () const |
Return true if the model was constructed successfully. | |
virtual int | getSampleRate () const |
Return the frame rate in frames per second. | |
virtual int | getStartFrame () const |
Return the first audio frame spanned by the model. | |
virtual int | getEndFrame () const |
Return the last audio frame spanned by the model. | |
virtual Model * | clone () const |
Return a copy of this model. | |
virtual void | setStartFrame (int) |
Set the frame offset of the first column. | |
virtual int | getResolution () const |
Return the number of sample frames covered by each set of bins. | |
virtual void | setResolution (int sz) |
Set the number of sample frames covered by each set of bins. | |
virtual int | getWidth () const |
Return the number of columns. | |
virtual int | getHeight () const |
Return the number of bins in each set of bins. | |
virtual void | setHeight (int sz) |
Set the number of bins in each set of bins. | |
virtual float | getMinimumLevel () const |
Return the minimum value of the value in each bin. | |
virtual void | setMinimumLevel (float sz) |
Set the minimum value of the value in a bin. | |
virtual float | getMaximumLevel () const |
Return the maximum value of the value in each bin. | |
virtual void | setMaximumLevel (float sz) |
Set the maximum value of the value in a bin. | |
virtual bool | isColumnAvailable (int x) const |
Return true if there are data available for the given column. | |
virtual Column | getColumn (int x) const |
Get the set of bin values at the given column. | |
virtual float | getValueAt (int x, int n) const |
Get a single value, from the n'th bin of the given column. | |
virtual void | setColumn (int x, const Column &values) |
Set the entire set of bin values at the given column. | |
virtual QString | getBinName (int n) const |
Return the name of bin n. | |
virtual void | setBinName (int n, QString) |
Set the name of bin n. | |
virtual void | setBinNames (std::vector< QString > names) |
Set the names of all bins. | |
virtual bool | hasBinValues () const |
Return true if the bins have values as well as names. | |
virtual float | getBinValue (int n) const |
Return the value of bin n, if any. | |
virtual void | setBinValues (std::vector< float > values) |
Set the values of all bins (separate from their labels). | |
virtual QString | getBinValueUnit () const |
Obtain the name of the unit of the values returned from getBinValue(), if any. | |
virtual void | setBinValueUnit (QString unit) |
Set the name of the unit of the values return from getBinValue() if any. | |
bool | shouldUseLogValueScale () const |
Return true if the distribution of values in the bins is such as to suggest a log scale (mapping to colour etc) may be better than a linear one. | |
virtual void | setCompletion (int completion, bool update=true) |
virtual int | getCompletion () const |
QString | getTypeName () const |
Return the type of the model. | |
virtual QString | toDelimitedDataString (QString delimiter) const |
virtual QString | toDelimitedDataStringSubset (QString delimiter, int f0, int f1) const |
virtual void | toXml (QTextStream &out, QString indent="", QString extraAttributes="") const |
Stream this exportable object out to XML on a text stream. | |
bool | isLocalPeak (int x, int y) |
Utility function to query whether a given bin is greater than its (vertical) neighbours. | |
bool | isOverThreshold (int x, int y, float threshold) |
Utility function to query whether a given bin is greater than a certain threshold. | |
virtual int | getRowCount () const |
virtual int | getColumnCount () const |
virtual QString | getHeading (int column) const |
virtual QVariant | getData (int row, int column, int) const |
virtual bool | isColumnTimeValue (int col) const |
virtual SortType | getSortType (int) const |
virtual long | getFrameForRow (int row) const |
virtual int | getRowForFrame (long frame) const |
virtual int | getNativeRate () const |
Return the frame rate of the underlying material, if the model itself has already been resampled. | |
virtual QString | getTitle () const |
Return the "work title" of the model, if known. | |
virtual QString | getMaker () const |
Return the "artist" or "maker" of the model, if known. | |
virtual QString | getLocation () const |
Return the location of the data in this model (e.g. | |
virtual void | abandon () |
Mark the model as abandoning. | |
virtual bool | isAbandoning () const |
Query whether the model has been marked as abandoning. | |
virtual bool | isReady (int *completion=0) const |
Return true if the model has finished loading or calculating all its data, for a model that is capable of calculating in a background thread. | |
virtual const ZoomConstraint * | getZoomConstraint () const |
If this model imposes a zoom constraint, i.e. | |
virtual Model * | getSourceModel () const |
If this model was derived from another, return the model it was derived from. | |
virtual void | setSourceModel (Model *model) |
Set the source model for this model. | |
virtual void | setAlignment (AlignmentModel *alignment) |
Specify an aligment between this model's timeline and that of a reference model. | |
virtual const AlignmentModel * | getAlignment () const |
Retrieve the alignment model for this model. | |
virtual const Model * | getAlignmentReference () const |
Return the reference model for the current alignment timeline, if any. | |
virtual int | alignToReference (int frame) const |
Return the frame number of the reference model that corresponds to the given frame number in this model. | |
virtual int | alignFromReference (int referenceFrame) const |
Return the frame number in this model that corresponds to the given frame number of the reference model. | |
virtual int | getAlignmentCompletion () const |
Return the completion percentage for the alignment model: 100 if there is no alignment model or it has been entirely calculated, or less than 100 if it is still being calculated. | |
void | setRDFTypeURI (QString uri) |
Set the event, feature, or signal type URI for the features contained in this model, according to the Audio Features RDF ontology. | |
QString | getRDFTypeURI () const |
Retrieve the event, feature, or signal type URI for the features contained in this model, if previously set with setRDFTypeURI. | |
virtual QString | toXmlString (QString indent="", QString extraAttributes="") const |
Convert this exportable object to XML in a string. | |
virtual bool | canPlay () const |
virtual QString | getDefaultPlayClipId () const |
virtual bool | getDefaultPlayAudible () const |
virtual bool | isEditable () const |
virtual Command * | getSetDataCommand (int, int, const QVariant &, int) |
virtual Command * | getInsertRowCommand (int) |
virtual Command * | getRemoveRowCommand (int) |
Static Public Member Functions | |
static QString | encodeEntities (QString) |
static QString | encodeColour (int r, int g, int b) |
static int | getObjectExportId (const void *) |
Static Public Attributes | |
static const int | COMPLETION_UNKNOWN = -1 |
Protected Types | |
typedef QVector< Column > | ValueMatrix |
Protected Member Functions | |
void | truncateAndStore (int index, const Column &values) |
Column | expandAndRetrieve (int index) const |
Protected Attributes | |
ValueMatrix | m_data |
std::vector< signed char > | m_trunc |
std::vector< QString > | m_binNames |
std::vector< float > | m_binValues |
QString | m_binValueUnit |
int | m_startFrame |
int | m_sampleRate |
int | m_resolution |
int | m_yBinCount |
CompressionType | m_compression |
float | m_minimum |
float | m_maximum |
bool | m_haveExtents |
bool | m_notifyOnAdd |
long | m_sinceLastNotifyMin |
long | m_sinceLastNotifyMax |
int | m_completion |
QReadWriteLock | m_lock |
Model * | m_sourceModel |
AlignmentModel * | m_alignment |
QString | m_typeUri |
bool | m_abandoning |
bool | m_aboutToDelete |
Definition at line 25 of file EditableDenseThreeDimensionalModel.h.
typedef QVector<Column> EditableDenseThreeDimensionalModel::ValueMatrix [protected] |
Definition at line 200 of file EditableDenseThreeDimensionalModel.h.
typedef QVector<float> DenseThreeDimensionalModel::Column [inherited] |
Definition at line 67 of file DenseThreeDimensionalModel.h.
Definition at line 39 of file EditableDenseThreeDimensionalModel.h.
anonymous enum [inherited] |
Definition at line 44 of file TabularModel.h.
enum TabularModel::SortType [inherited] |
Definition at line 45 of file TabularModel.h.
EditableDenseThreeDimensionalModel::EditableDenseThreeDimensionalModel | ( | int | sampleRate, |
int | resolution, | ||
int | yBinCount, | ||
CompressionType | compression, | ||
bool | notifyOnAdd = true |
||
) |
Definition at line 32 of file EditableDenseThreeDimensionalModel.cpp.
Referenced by clone().
bool EditableDenseThreeDimensionalModel::isOK | ( | ) | const [virtual] |
Return true if the model was constructed successfully.
Classes that refer to the model should always test this before use.
Implements Model.
Definition at line 53 of file EditableDenseThreeDimensionalModel.cpp.
int EditableDenseThreeDimensionalModel::getSampleRate | ( | ) | const [virtual] |
Return the frame rate in frames per second.
Implements Model.
Definition at line 59 of file EditableDenseThreeDimensionalModel.cpp.
References m_sampleRate.
int EditableDenseThreeDimensionalModel::getStartFrame | ( | ) | const [virtual] |
Return the first audio frame spanned by the model.
Implements Model.
Definition at line 65 of file EditableDenseThreeDimensionalModel.cpp.
References m_startFrame.
int EditableDenseThreeDimensionalModel::getEndFrame | ( | ) | const [virtual] |
Return the last audio frame spanned by the model.
Implements Model.
Definition at line 77 of file EditableDenseThreeDimensionalModel.cpp.
References m_data, and m_resolution.
Model * EditableDenseThreeDimensionalModel::clone | ( | ) | const [virtual] |
Return a copy of this model.
If the model is not editable, this may be effectively a shallow copy. If the model is editable, however, this operation must properly copy all of the model's editable data.
In general this operation is not useful for non-editable dense models such as waveforms, because there may be no efficient copy operation implemented -- for such models it is better not to copy at all.
Caller owns the returned value.
Implements Model.
Definition at line 83 of file EditableDenseThreeDimensionalModel.cpp.
References EditableDenseThreeDimensionalModel(), m_compression, m_data, m_haveExtents, m_lock, m_maximum, m_minimum, m_resolution, m_sampleRate, m_yBinCount, and setColumn().
void EditableDenseThreeDimensionalModel::setStartFrame | ( | int | f | ) | [virtual] |
Set the frame offset of the first column.
Definition at line 71 of file EditableDenseThreeDimensionalModel.cpp.
References m_startFrame.
Referenced by CSVFileReader::load().
int EditableDenseThreeDimensionalModel::getResolution | ( | ) | const [virtual] |
Return the number of sample frames covered by each set of bins.
Implements DenseThreeDimensionalModel.
Definition at line 103 of file EditableDenseThreeDimensionalModel.cpp.
References m_resolution.
Referenced by FeatureExtractionModelTransformer::addFeature().
void EditableDenseThreeDimensionalModel::setResolution | ( | int | sz | ) | [virtual] |
Set the number of sample frames covered by each set of bins.
Definition at line 109 of file EditableDenseThreeDimensionalModel.cpp.
References m_resolution.
Referenced by CSVFileReader::load().
int EditableDenseThreeDimensionalModel::getWidth | ( | ) | const [virtual] |
Return the number of columns.
Implements DenseThreeDimensionalModel.
Definition at line 115 of file EditableDenseThreeDimensionalModel.cpp.
References m_data.
Referenced by isColumnAvailable().
int EditableDenseThreeDimensionalModel::getHeight | ( | ) | const [virtual] |
Return the number of bins in each set of bins.
Implements DenseThreeDimensionalModel.
Definition at line 121 of file EditableDenseThreeDimensionalModel.cpp.
References m_yBinCount.
void EditableDenseThreeDimensionalModel::setHeight | ( | int | sz | ) | [virtual] |
Set the number of bins in each set of bins.
Definition at line 127 of file EditableDenseThreeDimensionalModel.cpp.
References m_yBinCount.
float EditableDenseThreeDimensionalModel::getMinimumLevel | ( | ) | const [virtual] |
Return the minimum value of the value in each bin.
Implements DenseThreeDimensionalModel.
Definition at line 133 of file EditableDenseThreeDimensionalModel.cpp.
References m_minimum.
void EditableDenseThreeDimensionalModel::setMinimumLevel | ( | float | sz | ) | [virtual] |
Set the minimum value of the value in a bin.
Definition at line 139 of file EditableDenseThreeDimensionalModel.cpp.
References m_minimum.
Referenced by CSVFileReader::load().
float EditableDenseThreeDimensionalModel::getMaximumLevel | ( | ) | const [virtual] |
Return the maximum value of the value in each bin.
Implements DenseThreeDimensionalModel.
Definition at line 145 of file EditableDenseThreeDimensionalModel.cpp.
References m_maximum.
void EditableDenseThreeDimensionalModel::setMaximumLevel | ( | float | sz | ) | [virtual] |
Set the maximum value of the value in a bin.
Definition at line 151 of file EditableDenseThreeDimensionalModel.cpp.
References m_maximum.
Referenced by CSVFileReader::load().
virtual bool EditableDenseThreeDimensionalModel::isColumnAvailable | ( | int | x | ) | const [inline, virtual] |
Return true if there are data available for the given column.
Implements DenseThreeDimensionalModel.
Definition at line 113 of file EditableDenseThreeDimensionalModel.h.
References getWidth().
EditableDenseThreeDimensionalModel::Column EditableDenseThreeDimensionalModel::getColumn | ( | int | x | ) | const [virtual] |
Get the set of bin values at the given column.
Implements DenseThreeDimensionalModel.
Definition at line 157 of file EditableDenseThreeDimensionalModel.cpp.
References expandAndRetrieve(), m_data, and m_lock.
Referenced by Dense3DModelPeakCache::getColumn(), and getValueAt().
float EditableDenseThreeDimensionalModel::getValueAt | ( | int | x, |
int | n | ||
) | const [virtual] |
Get a single value, from the n'th bin of the given column.
Implements DenseThreeDimensionalModel.
Definition at line 165 of file EditableDenseThreeDimensionalModel.cpp.
References getColumn(), and m_minimum.
Referenced by Dense3DModelPeakCache::getValueAt().
void EditableDenseThreeDimensionalModel::setColumn | ( | int | x, |
const Column & | values | ||
) | [virtual] |
Set the entire set of bin values at the given column.
Definition at line 329 of file EditableDenseThreeDimensionalModel.cpp.
References ISINF, ISNAN, m_data, m_haveExtents, m_lock, m_maximum, m_minimum, m_notifyOnAdd, m_resolution, m_sinceLastNotifyMax, m_sinceLastNotifyMin, m_trunc, Model::modelChanged(), Model::modelChangedWithin(), and truncateAndStore().
Referenced by FeatureExtractionModelTransformer::addFeature(), clone(), Dense3DModelPeakCache::fillColumn(), RDFImporterImpl::getDataModelsDense(), and CSVFileReader::load().
QString EditableDenseThreeDimensionalModel::getBinName | ( | int | n | ) | const [virtual] |
Return the name of bin n.
This is a single label per bin that does not vary from one column to the next.
Implements DenseThreeDimensionalModel.
Definition at line 391 of file EditableDenseThreeDimensionalModel.cpp.
References m_binNames.
void EditableDenseThreeDimensionalModel::setBinName | ( | int | n, |
QString | name | ||
) | [virtual] |
Set the name of bin n.
Definition at line 398 of file EditableDenseThreeDimensionalModel.cpp.
References m_binNames, and Model::modelChanged().
void EditableDenseThreeDimensionalModel::setBinNames | ( | std::vector< QString > | names | ) | [virtual] |
Set the names of all bins.
Definition at line 406 of file EditableDenseThreeDimensionalModel.cpp.
References m_binNames, and Model::modelChanged().
Referenced by FeatureExtractionModelTransformer::createOutputModels().
bool EditableDenseThreeDimensionalModel::hasBinValues | ( | ) | const [virtual] |
Return true if the bins have values as well as names.
(The values may have been derived from the names, e.g. by parsing numbers from them.) If this returns true, getBinValue() may be used to retrieve the values.
Reimplemented from DenseThreeDimensionalModel.
Definition at line 413 of file EditableDenseThreeDimensionalModel.cpp.
References m_binValues.
float EditableDenseThreeDimensionalModel::getBinValue | ( | int | n | ) | const [virtual] |
Return the value of bin n, if any.
This is a "vertical scale" value which does not vary from one column to the next. This is only meaningful if hasBinValues() returns true.
Reimplemented from DenseThreeDimensionalModel.
Definition at line 419 of file EditableDenseThreeDimensionalModel.cpp.
References m_binValues.
void EditableDenseThreeDimensionalModel::setBinValues | ( | std::vector< float > | values | ) | [virtual] |
Set the values of all bins (separate from their labels).
These are "vertical scale" values which do not vary from one column to the next.
Definition at line 426 of file EditableDenseThreeDimensionalModel.cpp.
References m_binValues.
QString EditableDenseThreeDimensionalModel::getBinValueUnit | ( | ) | const [virtual] |
Obtain the name of the unit of the values returned from getBinValue(), if any.
Reimplemented from DenseThreeDimensionalModel.
Definition at line 432 of file EditableDenseThreeDimensionalModel.cpp.
References m_binValueUnit.
void EditableDenseThreeDimensionalModel::setBinValueUnit | ( | QString | unit | ) | [virtual] |
Set the name of the unit of the values return from getBinValue() if any.
Definition at line 438 of file EditableDenseThreeDimensionalModel.cpp.
References m_binValueUnit.
bool EditableDenseThreeDimensionalModel::shouldUseLogValueScale | ( | ) | const [virtual] |
Return true if the distribution of values in the bins is such as to suggest a log scale (mapping to colour etc) may be better than a linear one.
Implements DenseThreeDimensionalModel.
Definition at line 444 of file EditableDenseThreeDimensionalModel.cpp.
References m_data, m_lock, and LogRange::useLogScale().
void EditableDenseThreeDimensionalModel::setCompletion | ( | int | completion, |
bool | update = true |
||
) | [virtual] |
Definition at line 475 of file EditableDenseThreeDimensionalModel.cpp.
References Model::completionChanged(), m_completion, m_notifyOnAdd, m_resolution, m_sinceLastNotifyMax, m_sinceLastNotifyMin, Model::modelChanged(), and Model::modelChangedWithin().
Referenced by FeatureExtractionModelTransformer::setCompletion().
virtual int EditableDenseThreeDimensionalModel::getCompletion | ( | ) | const [inline, virtual] |
Implements DenseThreeDimensionalModel.
Definition at line 188 of file EditableDenseThreeDimensionalModel.h.
References m_completion.
QString EditableDenseThreeDimensionalModel::getTypeName | ( | ) | const [inline, virtual] |
Return the type of the model.
For display purposes only.
Reimplemented from DenseThreeDimensionalModel.
Definition at line 190 of file EditableDenseThreeDimensionalModel.h.
QString EditableDenseThreeDimensionalModel::toDelimitedDataString | ( | QString | delimiter | ) | const [virtual] |
Reimplemented from Model.
Definition at line 503 of file EditableDenseThreeDimensionalModel.cpp.
QString EditableDenseThreeDimensionalModel::toDelimitedDataStringSubset | ( | QString | delimiter, |
int | f0, | ||
int | f1 | ||
) | const [virtual] |
Reimplemented from Model.
Definition at line 518 of file EditableDenseThreeDimensionalModel.cpp.
References m_data, m_lock, m_resolution, and m_startFrame.
void EditableDenseThreeDimensionalModel::toXml | ( | QTextStream & | stream, |
QString | indent = "" , |
||
QString | extraAttributes = "" |
||
) | const [virtual] |
Stream this exportable object out to XML on a text stream.
Reimplemented from Model.
Definition at line 536 of file EditableDenseThreeDimensionalModel.cpp.
References XmlExportable::getObjectExportId(), m_binNames, m_data, m_lock, m_maximum, m_minimum, m_resolution, m_startFrame, m_yBinCount, and SVDEBUG.
void EditableDenseThreeDimensionalModel::truncateAndStore | ( | int | index, |
const Column & | values | ||
) | [protected] |
Definition at line 175 of file EditableDenseThreeDimensionalModel.cpp.
References expandAndRetrieve(), m_compression, m_data, m_trunc, m_yBinCount, and NoCompression.
Referenced by setColumn().
EditableDenseThreeDimensionalModel::Column EditableDenseThreeDimensionalModel::expandAndRetrieve | ( | int | index | ) | const [protected] |
Definition at line 286 of file EditableDenseThreeDimensionalModel.cpp.
References m_data, m_trunc, and m_yBinCount.
Referenced by getColumn(), and truncateAndStore().
bool DenseThreeDimensionalModel::isLocalPeak | ( | int | x, |
int | y | ||
) | [inline, inherited] |
Utility function to query whether a given bin is greater than its (vertical) neighbours.
Definition at line 114 of file DenseThreeDimensionalModel.h.
References DenseThreeDimensionalModel::getHeight(), and DenseThreeDimensionalModel::getValueAt().
bool DenseThreeDimensionalModel::isOverThreshold | ( | int | x, |
int | y, | ||
float | threshold | ||
) | [inline, inherited] |
Utility function to query whether a given bin is greater than a certain threshold.
Definition at line 125 of file DenseThreeDimensionalModel.h.
References DenseThreeDimensionalModel::getValueAt().
virtual int DenseThreeDimensionalModel::getRowCount | ( | ) | const [inline, virtual, inherited] |
Implements TabularModel.
Definition at line 140 of file DenseThreeDimensionalModel.h.
References DenseThreeDimensionalModel::getWidth().
virtual int DenseThreeDimensionalModel::getColumnCount | ( | ) | const [inline, virtual, inherited] |
Implements TabularModel.
Definition at line 141 of file DenseThreeDimensionalModel.h.
References DenseThreeDimensionalModel::getHeight().
virtual QString DenseThreeDimensionalModel::getHeading | ( | int | column | ) | const [inline, virtual, inherited] |
Implements TabularModel.
Definition at line 143 of file DenseThreeDimensionalModel.h.
References DenseThreeDimensionalModel::getBinName().
virtual QVariant DenseThreeDimensionalModel::getData | ( | int | row, |
int | column, | ||
int | |||
) | const [inline, virtual, inherited] |
Implements TabularModel.
Definition at line 152 of file DenseThreeDimensionalModel.h.
References RealTime::frame2RealTime(), DenseThreeDimensionalModel::getResolution(), Model::getSampleRate(), DenseThreeDimensionalModel::getValueAt(), and RealTime::toText().
virtual bool DenseThreeDimensionalModel::isColumnTimeValue | ( | int | col | ) | const [inline, virtual, inherited] |
Implements TabularModel.
Definition at line 167 of file DenseThreeDimensionalModel.h.
virtual SortType DenseThreeDimensionalModel::getSortType | ( | int | ) | const [inline, virtual, inherited] |
Implements TabularModel.
Definition at line 170 of file DenseThreeDimensionalModel.h.
References TabularModel::SortNumeric.
virtual long DenseThreeDimensionalModel::getFrameForRow | ( | int | row | ) | const [inline, virtual, inherited] |
Implements TabularModel.
Definition at line 174 of file DenseThreeDimensionalModel.h.
References Model::getSampleRate().
virtual int DenseThreeDimensionalModel::getRowForFrame | ( | long | frame | ) | const [inline, virtual, inherited] |
Implements TabularModel.
Definition at line 177 of file DenseThreeDimensionalModel.h.
References Model::getSampleRate().
virtual int Model::getNativeRate | ( | ) | const [inline, virtual, inherited] |
Return the frame rate of the underlying material, if the model itself has already been resampled.
Reimplemented in WaveFileModel.
Definition at line 69 of file Model.h.
References Model::getSampleRate().
QString Model::getTitle | ( | ) | const [virtual, inherited] |
Return the "work title" of the model, if known.
Reimplemented in WaveFileModel.
Definition at line 153 of file Model.cpp.
References Model::getTitle(), and Model::m_sourceModel.
Referenced by Model::getTitle().
QString Model::getMaker | ( | ) | const [virtual, inherited] |
Return the "artist" or "maker" of the model, if known.
Reimplemented in WaveFileModel.
Definition at line 160 of file Model.cpp.
References Model::getMaker(), and Model::m_sourceModel.
Referenced by Model::getMaker().
QString Model::getLocation | ( | ) | const [virtual, inherited] |
Return the location of the data in this model (e.g.
source URL). This should not normally be returned for editable models that have been edited.
Reimplemented in WaveFileModel.
Definition at line 167 of file Model.cpp.
References Model::getLocation(), and Model::m_sourceModel.
Referenced by Model::getLocation().
virtual void Model::abandon | ( | ) | [inline, virtual, inherited] |
Mark the model as abandoning.
This means that the application no longer needs it, so it can stop doing any background calculations it may be involved in. Note that as far as the model API is concerned, this does nothing more than tell the model to return true from isAbandoning(). The actual response to this will depend on the model's context -- it's possible nothing at all will change.
Definition at line 118 of file Model.h.
References Model::m_abandoning.
virtual bool Model::isAbandoning | ( | ) | const [inline, virtual, inherited] |
Query whether the model has been marked as abandoning.
Definition at line 125 of file Model.h.
References Model::m_abandoning.
Referenced by FeatureExtractionModelTransformer::setCompletion().
virtual bool Model::isReady | ( | int * | completion = 0 | ) | const [inline, virtual, inherited] |
Return true if the model has finished loading or calculating all its data, for a model that is capable of calculating in a background thread.
The default implementation is appropriate for a thread that does not background any work but carries out all its calculation from the constructor or accessors.
If "completion" is non-NULL, this function should return through it an estimated percentage value showing how far through the background operation it thinks it is (for progress reporting). If it has no way to calculate progress, it may return the special value COMPLETION_UNKNOWN.
Reimplemented in SparseModel< PointType >, SparseModel< FlexiNote >, SparseModel< Note >, SparseModel< PathPoint >, SparseModel< TextPoint >, SparseModel< ImagePoint >, SparseModel< TimeValuePoint >, SparseModel< OneDimensionalPoint >, SparseModel< RegionRec >, AlignmentModel, AggregateWaveModel, WaveFileModel, and WritableWaveFileModel.
Definition at line 142 of file Model.h.
References Model::isOK().
Referenced by FFTDataServer::fillColumn(), RealTimeEffectModelTransformer::run(), FeatureExtractionModelTransformer::run(), and FFTDataServer::FillThread::run().
virtual const ZoomConstraint* Model::getZoomConstraint | ( | ) | const [inline, virtual, inherited] |
If this model imposes a zoom constraint, i.e.
some limit to the set of resolutions at which its data can meaningfully be displayed, then return it.
Reimplemented in AggregateWaveModel, WritableWaveFileModel, AlignmentModel, and WaveFileModel.
virtual Model* Model::getSourceModel | ( | ) | const [inline, virtual, inherited] |
If this model was derived from another, return the model it was derived from.
The assumption is that the source model's alignment will also apply to this model, unless some other property (such as a specific alignment model set on this model) indicates otherwise.
Definition at line 165 of file Model.h.
References Model::m_sourceModel.
void Model::setSourceModel | ( | Model * | model | ) | [virtual, inherited] |
Set the source model for this model.
Definition at line 42 of file Model.cpp.
References Model::aboutToBeDeleted(), Model::alignmentCompletionChanged(), Model::m_sourceModel, and Model::sourceModelAboutToBeDeleted().
Referenced by FeatureExtractionModelTransformer::createOutputModels(), FFTModel::FFTModel(), and RDFImporterImpl::getDataModelsSparse().
void Model::setAlignment | ( | AlignmentModel * | alignment | ) | [virtual, inherited] |
Specify an aligment between this model's timeline and that of a reference model.
The alignment model records both the reference and the alignment. This model takes ownership of the alignment model.
Definition at line 82 of file Model.cpp.
References Model::aboutToDelete(), Model::alignmentCompletionChanged(), Model::completionChanged(), and Model::m_alignment.
const AlignmentModel * Model::getAlignment | ( | ) | const [virtual, inherited] |
Retrieve the alignment model for this model.
This is not a generally useful function, as the alignment you really want may be performed by the source model instead. You should normally use getAlignmentReference, alignToReference and alignFromReference instead of this. The main intended application for this function is in streaming out alignments to the session file.
Definition at line 94 of file Model.cpp.
References Model::m_alignment.
const Model * Model::getAlignmentReference | ( | ) | const [virtual, inherited] |
Return the reference model for the current alignment timeline, if any.
Definition at line 100 of file Model.cpp.
References Model::getAlignmentReference(), AlignmentModel::getReferenceModel(), Model::m_alignment, and Model::m_sourceModel.
Referenced by Model::getAlignmentReference().
int Model::alignToReference | ( | int | frame | ) | const [virtual, inherited] |
Return the frame number of the reference model that corresponds to the given frame number in this model.
Definition at line 110 of file Model.cpp.
References Model::alignToReference(), Model::getEndFrame(), AlignmentModel::getReferenceModel(), Model::m_alignment, Model::m_sourceModel, and AlignmentModel::toReference().
Referenced by Model::alignToReference().
int Model::alignFromReference | ( | int | referenceFrame | ) | const [virtual, inherited] |
Return the frame number in this model that corresponds to the given frame number of the reference model.
Definition at line 125 of file Model.cpp.
References Model::alignFromReference(), AlignmentModel::fromReference(), Model::getEndFrame(), Model::m_alignment, and Model::m_sourceModel.
Referenced by Model::alignFromReference().
int Model::getAlignmentCompletion | ( | ) | const [virtual, inherited] |
Return the completion percentage for the alignment model: 100 if there is no alignment model or it has been entirely calculated, or less than 100 if it is still being calculated.
Definition at line 139 of file Model.cpp.
References Model::getAlignmentCompletion(), AlignmentModel::isReady(), Model::m_alignment, and Model::m_sourceModel.
Referenced by Model::getAlignmentCompletion().
void Model::setRDFTypeURI | ( | QString | uri | ) | [inline, inherited] |
Set the event, feature, or signal type URI for the features contained in this model, according to the Audio Features RDF ontology.
Definition at line 223 of file Model.h.
References Model::m_typeUri.
Referenced by FeatureExtractionModelTransformer::createOutputModels(), FeatureExtractionModelTransformer::getAdditionalModel(), RDFImporterImpl::getDataModelsDense(), and RDFImporterImpl::getDataModelsSparse().
QString Model::getRDFTypeURI | ( | ) | const [inline, inherited] |
Retrieve the event, feature, or signal type URI for the features contained in this model, if previously set with setRDFTypeURI.
Definition at line 230 of file Model.h.
References Model::m_typeUri.
Referenced by FeatureExtractionModelTransformer::getAdditionalModel().
void Model::aboutToDelete | ( | ) | [slot, inherited] |
Definition at line 60 of file Model.cpp.
References Model::aboutToBeDeleted(), and Model::m_aboutToDelete.
Referenced by AlignmentModel::pathChanged(), AlignmentModel::pathCompletionChanged(), Model::setAlignment(), AlignmentModel::setPath(), AlignmentModel::~AlignmentModel(), and Model::~Model().
void Model::sourceModelAboutToBeDeleted | ( | ) | [slot, inherited] |
Reimplemented in FFTModel, and Dense3DModelPeakCache.
Definition at line 76 of file Model.cpp.
References Model::m_sourceModel.
Referenced by Model::setSourceModel().
void Model::modelChanged | ( | ) | [signal, inherited] |
Emitted when a model has been edited (or more data retrieved from cache, in the case of a cached model that generates slowly)
Reimplemented in AggregateWaveModel, and AlignmentModel.
Referenced by SparseValueModel< RegionRec >::addPoint(), WaveFileModel::cacheFilled(), SparseValueModel< RegionRec >::deletePoint(), Dense3DModelPeakCache::Dense3DModelPeakCache(), WaveFileModel::fillTimerTimedOut(), setBinName(), setBinNames(), setColumn(), setCompletion(), and WritableWaveFileModel::WritableWaveFileModel().
void Model::modelChangedWithin | ( | int | startFrame, |
int | endFrame | ||
) | [signal, inherited] |
Emitted when a model has been edited (or more data retrieved from cache, in the case of a cached model that generates slowly)
Reimplemented in AggregateWaveModel, and AlignmentModel.
Referenced by WaveFileModel::cacheFilled(), WaveFileModel::fillTimerTimedOut(), setColumn(), setCompletion(), and WritableWaveFileModel::WritableWaveFileModel().
void Model::completionChanged | ( | ) | [signal, inherited] |
Emitted when some internal processing has advanced a stage, but the model has not changed externally.
Views should respond by updating any progress meters or other monitoring, but not refreshing the actual view.
Reimplemented in AggregateWaveModel, and AlignmentModel.
Referenced by Model::setAlignment(), and setCompletion().
void Model::ready | ( | ) | [signal, inherited] |
Emitted when internal processing is complete (i.e.
when isReady() would return true, with completion at 100).
Referenced by WaveFileModel::cacheFilled(), WaveFileModel::isReady(), AggregateWaveModel::isReady(), and SparseModel< RegionRec >::isReady().
void Model::alignmentCompletionChanged | ( | ) | [signal, inherited] |
Emitted when the completion percentage changes for the calculation of this model's alignment model.
Referenced by Model::setAlignment(), and Model::setSourceModel().
void Model::aboutToBeDeleted | ( | ) | [signal, inherited] |
Emitted when something notifies this model (through calling aboutToDelete() that it is about to delete it.
Note that this depends on an external agent such as a Document object or owning model telling the model that it is about to delete it; there is nothing in the model to guarantee that this signal will be emitted before the actual deletion.
Referenced by Model::aboutToDelete(), Dense3DModelPeakCache::Dense3DModelPeakCache(), and Model::setSourceModel().
QString XmlExportable::toXmlString | ( | QString | indent = "" , |
QString | extraAttributes = "" |
||
) | const [virtual, inherited] |
Convert this exportable object to XML in a string.
The default implementation calls toXml and returns the result as a string. Do not override this unless you really know what you're doing.
Definition at line 25 of file XmlExportable.cpp.
References XmlExportable::toXml().
Referenced by ModelTransformerFactory::getConfigurationForTransform(), and RDFTransformFactoryImpl::getTransforms().
QString XmlExportable::encodeEntities | ( | QString | s | ) | [static, inherited] |
Definition at line 41 of file XmlExportable.cpp.
Referenced by TextMatcher::test(), PluginXml::toXml(), OneDimensionalPoint::toXml(), TimeValuePoint::toXml(), TextPoint::toXml(), ImagePoint::toXml(), RegionRec::toXml(), Note::toXml(), FlexiNote::toXml(), WritableWaveFileModel::toXml(), WaveFileModel::toXml(), SparseValueModel< RegionRec >::toXml(), Transform::toXml(), and Model::toXml().
QString XmlExportable::encodeColour | ( | int | r, |
int | g, | ||
int | b | ||
) | [static, inherited] |
Definition at line 54 of file XmlExportable.cpp.
int XmlExportable::getObjectExportId | ( | const void * | object | ) | [static, inherited] |
Definition at line 71 of file XmlExportable.cpp.
References mutex.
Referenced by FFTDataServer::generateFileBasename(), AlignmentModel::toXml(), toXml(), and Model::toXml().
virtual bool Playable::canPlay | ( | ) | const [inline, virtual, inherited] |
Reimplemented in FlexiNoteModel, NoteModel, SparseTimeValueModel, SparseOneDimensionalModel, and DenseTimeValueModel.
Definition at line 26 of file Playable.h.
virtual QString Playable::getDefaultPlayClipId | ( | ) | const [inline, virtual, inherited] |
Reimplemented in FlexiNoteModel, NoteModel, SparseOneDimensionalModel, and DenseTimeValueModel.
Definition at line 27 of file Playable.h.
Referenced by PlayParameterRepository::addPlayable().
virtual bool Playable::getDefaultPlayAudible | ( | ) | const [inline, virtual, inherited] |
Reimplemented in SparseTimeValueModel.
Definition at line 28 of file Playable.h.
Referenced by PlayParameterRepository::addPlayable().
virtual bool TabularModel::isEditable | ( | ) | const [inline, virtual, inherited] |
Definition at line 54 of file TabularModel.h.
virtual Command* TabularModel::getSetDataCommand | ( | int | , |
int | , | ||
const QVariant & | , | ||
int | |||
) | [inline, virtual, inherited] |
Reimplemented in SparseModel< PointType >, SparseModel< FlexiNote >, SparseModel< Note >, SparseModel< PathPoint >, SparseModel< TextPoint >, SparseModel< ImagePoint >, SparseModel< TimeValuePoint >, SparseModel< OneDimensionalPoint >, SparseModel< RegionRec >, FlexiNoteModel, NoteModel, ImageModel, RegionModel, SparseTimeValueModel, SparseOneDimensionalModel, TextModel, IntervalModel< PointType >, IntervalModel< FlexiNote >, IntervalModel< Note >, and IntervalModel< RegionRec >.
Definition at line 55 of file TabularModel.h.
Referenced by ModelDataTableModel::setData().
virtual Command* TabularModel::getInsertRowCommand | ( | int | ) | [inline, virtual, inherited] |
Reimplemented in SparseModel< PointType >, SparseModel< FlexiNote >, SparseModel< Note >, SparseModel< PathPoint >, SparseModel< TextPoint >, SparseModel< ImagePoint >, SparseModel< TimeValuePoint >, SparseModel< OneDimensionalPoint >, and SparseModel< RegionRec >.
Definition at line 56 of file TabularModel.h.
Referenced by ModelDataTableModel::insertRow().
virtual Command* TabularModel::getRemoveRowCommand | ( | int | ) | [inline, virtual, inherited] |
Reimplemented in SparseModel< PointType >, SparseModel< FlexiNote >, SparseModel< Note >, SparseModel< PathPoint >, SparseModel< TextPoint >, SparseModel< ImagePoint >, SparseModel< TimeValuePoint >, SparseModel< OneDimensionalPoint >, and SparseModel< RegionRec >.
Definition at line 57 of file TabularModel.h.
Referenced by ModelDataTableModel::removeRow().
Definition at line 201 of file EditableDenseThreeDimensionalModel.h.
Referenced by clone(), expandAndRetrieve(), getColumn(), getEndFrame(), getWidth(), setColumn(), shouldUseLogValueScale(), toDelimitedDataString(), toDelimitedDataStringSubset(), toXml(), and truncateAndStore().
std::vector<signed char> EditableDenseThreeDimensionalModel::m_trunc [protected] |
Definition at line 211 of file EditableDenseThreeDimensionalModel.h.
Referenced by expandAndRetrieve(), setColumn(), and truncateAndStore().
std::vector<QString> EditableDenseThreeDimensionalModel::m_binNames [protected] |
Definition at line 215 of file EditableDenseThreeDimensionalModel.h.
Referenced by getBinName(), setBinName(), setBinNames(), and toXml().
std::vector<float> EditableDenseThreeDimensionalModel::m_binValues [protected] |
Definition at line 216 of file EditableDenseThreeDimensionalModel.h.
Referenced by getBinValue(), hasBinValues(), and setBinValues().
QString EditableDenseThreeDimensionalModel::m_binValueUnit [protected] |
Definition at line 217 of file EditableDenseThreeDimensionalModel.h.
Referenced by getBinValueUnit(), and setBinValueUnit().
int EditableDenseThreeDimensionalModel::m_startFrame [protected] |
Definition at line 219 of file EditableDenseThreeDimensionalModel.h.
Referenced by getStartFrame(), setStartFrame(), toDelimitedDataStringSubset(), and toXml().
int EditableDenseThreeDimensionalModel::m_sampleRate [protected] |
Definition at line 220 of file EditableDenseThreeDimensionalModel.h.
Referenced by clone(), and getSampleRate().
int EditableDenseThreeDimensionalModel::m_resolution [protected] |
Definition at line 221 of file EditableDenseThreeDimensionalModel.h.
Referenced by clone(), getEndFrame(), getResolution(), setColumn(), setCompletion(), setResolution(), toDelimitedDataStringSubset(), and toXml().
int EditableDenseThreeDimensionalModel::m_yBinCount [protected] |
Definition at line 222 of file EditableDenseThreeDimensionalModel.h.
Referenced by clone(), expandAndRetrieve(), getHeight(), setHeight(), toXml(), and truncateAndStore().
Definition at line 223 of file EditableDenseThreeDimensionalModel.h.
Referenced by clone(), and truncateAndStore().
float EditableDenseThreeDimensionalModel::m_minimum [protected] |
Definition at line 224 of file EditableDenseThreeDimensionalModel.h.
Referenced by clone(), getMinimumLevel(), getValueAt(), setColumn(), setMinimumLevel(), and toXml().
float EditableDenseThreeDimensionalModel::m_maximum [protected] |
Definition at line 225 of file EditableDenseThreeDimensionalModel.h.
Referenced by clone(), getMaximumLevel(), setColumn(), setMaximumLevel(), and toXml().
bool EditableDenseThreeDimensionalModel::m_haveExtents [protected] |
Definition at line 226 of file EditableDenseThreeDimensionalModel.h.
Referenced by clone(), and setColumn().
bool EditableDenseThreeDimensionalModel::m_notifyOnAdd [protected] |
Definition at line 227 of file EditableDenseThreeDimensionalModel.h.
Referenced by setColumn(), and setCompletion().
long EditableDenseThreeDimensionalModel::m_sinceLastNotifyMin [protected] |
Definition at line 228 of file EditableDenseThreeDimensionalModel.h.
Referenced by setColumn(), and setCompletion().
long EditableDenseThreeDimensionalModel::m_sinceLastNotifyMax [protected] |
Definition at line 229 of file EditableDenseThreeDimensionalModel.h.
Referenced by setColumn(), and setCompletion().
int EditableDenseThreeDimensionalModel::m_completion [protected] |
Definition at line 230 of file EditableDenseThreeDimensionalModel.h.
Referenced by getCompletion(), and setCompletion().
QReadWriteLock EditableDenseThreeDimensionalModel::m_lock [mutable, protected] |
Definition at line 232 of file EditableDenseThreeDimensionalModel.h.
Referenced by clone(), getColumn(), setColumn(), shouldUseLogValueScale(), toDelimitedDataString(), toDelimitedDataStringSubset(), and toXml().
const int Model::COMPLETION_UNKNOWN = -1 [static, inherited] |
Model* Model::m_sourceModel [protected, inherited] |
Definition at line 301 of file Model.h.
Referenced by Model::alignFromReference(), Model::alignToReference(), Model::getAlignmentCompletion(), Model::getAlignmentReference(), Model::getLocation(), Model::getMaker(), Model::getSourceModel(), Model::getTitle(), Model::setSourceModel(), FFTModel::sourceModelAboutToBeDeleted(), and Model::sourceModelAboutToBeDeleted().
AlignmentModel* Model::m_alignment [protected, inherited] |
Definition at line 302 of file Model.h.
Referenced by Model::alignFromReference(), Model::alignToReference(), Model::getAlignment(), Model::getAlignmentCompletion(), Model::getAlignmentReference(), Model::setAlignment(), and Model::~Model().
QString Model::m_typeUri [protected, inherited] |
Definition at line 303 of file Model.h.
Referenced by Model::getRDFTypeURI(), and Model::setRDFTypeURI().
bool Model::m_abandoning [protected, inherited] |
Definition at line 304 of file Model.h.
Referenced by Model::abandon(), and Model::isAbandoning().
bool Model::m_aboutToDelete [protected, inherited] |
Definition at line 305 of file Model.h.
Referenced by Model::aboutToDelete(), and Model::~Model().