OsStatus MpodBufferRecorder::disableDevice() { assert(isEnabled()); if (mpTickerTimer != NULL) { mpTickerTimer->stop(TRUE); delete mpTickerTimer; mpTickerTimer = NULL; } if (mpBuffer != NULL) { #ifdef FINAL_RECORDED_DATA_WRITE // [ OsDateTime now; OsDateTime::getCurTime(now); char fileName[1024]; snprintf(fileName, 1024, "MpodBufferRecorder-%4d.%02d.%02d.%02d-%02d-%02d.%03d.s16", now.getYear(), now.getMonth(), now.getDay(), now.getHour(), now.getMinute(), now.getSecond(), now.getMicrosecond()/1000); OsFile::openAndWrite(fileName, (char*)mpBuffer, mBufferEnd*sizeof(MpAudioSample)); #endif // FINAL_RECORDED_DATA_WRITE ] delete[] mpBuffer; mpBuffer = NULL; mBufferLength = 0; mBufferEnd = 0; } mIsEnabled = FALSE; return OS_SUCCESS; }