svcore  1.9
FileFeatureWriter Class Reference

#include <FileFeatureWriter.h>

Inheritance diagram for FileFeatureWriter:
Collaboration diagram for FileFeatureWriter:

List of all members.

Public Types

typedef vector< ParameterParameterList

Public Member Functions

virtual ~FileFeatureWriter ()
virtual ParameterList getSupportedParameters () const
virtual void setParameters (map< string, string > &params)
virtual void testOutputFile (QString trackId, TransformId transformId)
 Throw FailedToOpenOutputStream if we can already tell that we will be unable to write to the output file.
virtual void flush ()
virtual void finish ()
virtual void setTrackMetadata (QString, TrackMetadata)
virtual void write (QString trackid, const Transform &transform, const Vamp::Plugin::OutputDescriptor &output, const Vamp::Plugin::FeatureList &features, std::string summaryType="")=0
virtual QString getWriterTag () const =0

Protected Types

enum  FileWriteSupport { SupportOneFilePerTrackTransform = 1, SupportOneFilePerTrack = 2, SupportOneFileTotal = 4 }
typedef pair< QString,
TransformId
TrackTransformPair
typedef map
< TrackTransformPair, QFile * > 
FileMap
typedef map< QFile
*, QTextStream * > 
FileStreamMap

Protected Member Functions

 FileFeatureWriter (int support, QString extension)
QTextStream * getOutputStream (QString, TransformId)
QString getOutputFilename (QString, TransformId)
QFile * getOutputFile (QString, TransformId)
virtual void reviewFileForAppending (QString)

Protected Attributes

FileMap m_files
FileStreamMap m_streams
QTextStream * m_prevstream
int m_support
QString m_extension
QString m_baseDir
bool m_manyFiles
QString m_singleFileName
bool m_stdout
bool m_append
bool m_force

Detailed Description

Definition at line 37 of file FileFeatureWriter.h.


Member Typedef Documentation

typedef pair<QString, TransformId> FileFeatureWriter::TrackTransformPair [protected]

Definition at line 59 of file FileFeatureWriter.h.

typedef map<TrackTransformPair, QFile *> FileFeatureWriter::FileMap [protected]

Definition at line 60 of file FileFeatureWriter.h.

typedef map<QFile *, QTextStream *> FileFeatureWriter::FileStreamMap [protected]

Definition at line 61 of file FileFeatureWriter.h.

typedef vector<Parameter> FeatureWriter::ParameterList [inherited]

Definition at line 47 of file FeatureWriter.h.


Member Enumeration Documentation

Enumerator:
SupportOneFilePerTrackTransform 
SupportOneFilePerTrack 
SupportOneFileTotal 

Definition at line 50 of file FileFeatureWriter.h.


Constructor & Destructor Documentation

Definition at line 54 of file FileFeatureWriter.cpp.

References m_files, m_streams, and SVDEBUG.


Member Function Documentation

void FileFeatureWriter::setParameters ( map< string, string > &  params) [virtual]
void FileFeatureWriter::testOutputFile ( QString  ,
TransformId   
) [virtual]

Throw FailedToOpenOutputStream if we can already tell that we will be unable to write to the output file.

This is called to test the output stream before processing begins. The writer may legitimately succeed here but still fail later -- this is really an optimisation to ensure that easy-to-recognise failure cases fail early.

Reimplemented from FeatureWriter.

Definition at line 227 of file FileFeatureWriter.cpp.

References getOutputFilename(), m_singleFileName, and m_stdout.

void FileFeatureWriter::flush ( ) [virtual]

Reimplemented from FeatureWriter.

Definition at line 321 of file FileFeatureWriter.cpp.

References m_prevstream.

void FileFeatureWriter::finish ( ) [virtual]

Implements FeatureWriter.

Reimplemented in RDFFeatureWriter.

Definition at line 330 of file FileFeatureWriter.cpp.

References m_files, m_prevstream, m_singleFileName, m_stdout, m_streams, and SVDEBUG.

QTextStream * FileFeatureWriter::getOutputStream ( QString  trackId,
TransformId  transformId 
) [protected]
QString FileFeatureWriter::getOutputFilename ( QString  trackId,
TransformId  transformId 
) [protected]
QFile * FileFeatureWriter::getOutputFile ( QString  trackId,
TransformId  transformId 
) [protected]
virtual void FileFeatureWriter::reviewFileForAppending ( QString  ) [inline, protected, virtual]

Reimplemented in RDFFeatureWriter.

Definition at line 70 of file FileFeatureWriter.h.

Referenced by getOutputFile().

virtual void FeatureWriter::setTrackMetadata ( QString  ,
TrackMetadata   
) [inline, virtual, inherited]

Reimplemented in RDFFeatureWriter.

Definition at line 60 of file FeatureWriter.h.

virtual void FeatureWriter::write ( QString  trackid,
const Transform transform,
const Vamp::Plugin::OutputDescriptor &  output,
const Vamp::Plugin::FeatureList &  features,
std::string  summaryType = "" 
) [pure virtual, inherited]

Implemented in RDFFeatureWriter, and CSVFeatureWriter.

virtual QString FeatureWriter::getWriterTag ( ) const [pure virtual, inherited]

Implemented in RDFFeatureWriter, and CSVFeatureWriter.

Referenced by getOutputFilename().


Member Data Documentation

Definition at line 62 of file FileFeatureWriter.h.

Referenced by finish(), getOutputFile(), and ~FileFeatureWriter().

QTextStream* FileFeatureWriter::m_prevstream [protected]

Definition at line 64 of file FileFeatureWriter.h.

Referenced by finish(), flush(), and getOutputStream().

Definition at line 72 of file FileFeatureWriter.h.

Referenced by FileFeatureWriter(), getSupportedParameters(), and setParameters().

QString FileFeatureWriter::m_extension [protected]

Definition at line 73 of file FileFeatureWriter.h.

Referenced by FileFeatureWriter(), and getOutputFilename().

QString FileFeatureWriter::m_baseDir [protected]

Definition at line 74 of file FileFeatureWriter.h.

Referenced by getOutputFilename(), and setParameters().

bool FileFeatureWriter::m_append [protected]

Definition at line 78 of file FileFeatureWriter.h.

Referenced by getOutputFile(), getOutputFilename(), and setParameters().

bool FileFeatureWriter::m_force [protected]

Definition at line 79 of file FileFeatureWriter.h.

Referenced by getOutputFilename(), and setParameters().


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