this really sounds like a recursive inclusion issue and the solution is using forward declaration. you might be doing it incorrectly but pretty sure that's the solution.
also your design seems pretty convoluted, you shouldn't need as many threads just to create timers and in general when working with sound you shouldn't even use system timers like ofTimer. just count the number of sound buffers and that will give you the exact time according to the sound card's clock which is what you want to use:
numbuffers * buffersize / samplerate = seconds
ofSoundBuffer when sent from a soundstream has a getTickCount method that will tell you which buffer number it belongs to and from that you can calculate the time.