38 typedef std::vector<MappingFactory*> MappingFactories;
41 static MappingFactories& FactoryInstance();
81 mSemitones = inSemitones ;
86 return (
TData(pow( 2. , ( ( mSemitones / 12. ) * ( ( inValue - 8192. ) / 8192. ) ) )) ) ;
92 "Not enough arguments for ValueToRatioMapping" );
114 TData mFrequencyRef ;
121 const TData& inNoteRef,
122 const TData& inFrequencyRef )
124 mNoteRef = inNoteRef ;
125 mFrequencyRef = inFrequencyRef ;
130 return (
TData( pow( 2.0 , ( inNote - mNoteRef ) / 12.0 ) ) ) * mFrequencyRef ;
135 if ( arguments.
Size() == 0 )
143 "Not enough arguments for NoteToFreqMapping" );
144 Set( arguments[0], arguments[1] ) ;
163 TData mInOffset,mOutOffset,mScale;
178 mScale = (outB-outA)/(inB-inA);
182 return mOutOffset+(in-mInOffset)*mScale;
188 "Not enough arguments for LinearMapping");
189 Set(arguments[0],arguments[1],arguments[2],arguments[3]);