OpenDAFF C++ API  v1.7
Directional Audio File Format
DAFFContentMPS.h
Go to the documentation of this file.
1 /*
2  * -------------------------------------------------------------------------------------
3  *
4  * OpenDAFF - A free, open source software package for directional audio data
5  * Copyright 2016 Institute of Technical Acoustics, RWTH Aachen University
6  * OpenDAFF is distributed under the Apache License Version 2.0.
7  *
8  * ------------------------------------------------------------------------------------
9  *
10  */
11 
12 #ifndef IW_DAFF_CONTENTMPS
13 #define IW_DAFF_CONTENTMPS
14 
15 #include <DAFFDefs.h>
16 #include <DAFFContent.h>
17 #include <vector>
18 
20 
35 {
36 public:
37  inline virtual ~DAFFContentMPS() {};
38 
40  /*
41  * @return Number of frequencies
42  */
43  virtual int getNumFrequencies() const=0;
44 
46  /*
47  * @return Vector of frequencies
48  */
49  virtual const std::vector<float>& getFrequencies() const=0;
50 
52 
57  virtual float getOverallMagnitudeMaximum() const=0;
58 
59  // --= Data access =--
60 
62 
76  virtual int getMagnitudes(int iRecordIndex, int iChannel, float* pfDest) const=0;
77 
79 
92  virtual int getMagnitude(int iRecordIndex, int iChannel, int iFreqIndex, float& fMag) const=0;
93 
95 
107  virtual int getPhases(int iRecordIndex, int iChannel, float* pfDest) const=0;
108 
110 
122  virtual int getPhase(int iRecordIndex, int iChannel, int iFreqIndex, float& fPhase) const=0;
123 
125 
141  // TODO: Ausgabe Interleaved
142  virtual int getCoefficientsMP(int iRecordIndex, int iChannel, float* pfDest) const=0;
143 
145 
161  // TODO: Ausgabe Interleaved
162  virtual int getCoefficientsRI(int iRecordIndex, int iChannel, float* pfDest) const=0;
163 };
164 
165 #endif // IW_DAFF_CONTENTMPS
#define DAFF_API
Definition: DAFFDefs.h:29
Common content interface.
Definition: DAFFContent.h:40
Magnitude-phase spectrum content interface.
virtual ~DAFFContentMPS()
OpenDAFF is a project from the Institute of Technical Acoustics, RWTH Aachen University, Germany.