I understand why I can't cast a const to non const, but this is the inverse:
    float** inputChannelData = buffer.getArrayOfWritePointers();
    simpleRecorder->processInput(inputChannelData, buffer.getNumChannels(), buffer.getNumSamples());
signature:
void SimpleRecorder::processInput(const float * *inputChannelData, int numInputChannels, int numSamples)
Error:
Cannot initialize a parameter of type 'const float **' with an lvalue of type 'float **'
Why it even complies? I can pass something not const to a const.
I tried
reinterpret_cast<const float **>(inputChannelData)
but I get Reinterpret_cast from 'float **' to 'const float **' casts away qualifiers. What qualifiers? I'm actually putting a qualifier, not taking it out.
 
    