Class:            DBLoudness

Environment:      Siren
Superclass:         Siren.RatioLoudness
Category:         Music-Models-Implementation

Instances of DBLoudness represent deciBel loudness values.

printing

units
   Answer the units string of the receiver.

double dispatch

differenceFromDynamic: aDyn
   Subtract the argument from the receiver after turning both into db.

differenceFromVelocity: aDyn
   Subtract the argument from the receiver after turning both into db.

productFromDynamic: aDyn
   Multiply the argument by the receiver after turning both into db.

productFromVelocity: aDyn
   Multiply the argument by the receiver after turning both into db.

quotientFromDynamic: aDyn
   Divide the argument by the receiver after turning both into db.

quotientFromVelocity: aDyn
   Divide the argument by the receiver after turning both into db.

sumFromDynamic: aDyn
   Add the argument to the receiver after turning both into db.

private

species
   Answer Amplitude.

converting

asMIDI
   Answer a MIDI key velocity (0 to 127)

asRatio
   Answer the receiver as a ratio between 0 and 1.

positiveDB
   Answer the zero-based positive dB value of the receiver.

MetaClass:         DBLoudness class

coercion

ddMsgName
   Answer the selector to be used in coercing double-dispatching messages.