// >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> void WaveformProcessor::reset() { Filter *tmp = _stream.filter; _stream = StreamState(); if ( _operator ) _operator->reset(); if ( tmp != NULL ) { _stream.filter = tmp->clone(); delete tmp; } _status = WaitingForData; _statusValue = 0.; }
void Snapshotable::SaveSnapshot(ostream* file) { _stateVersion = SaveStateManager::FileFormatVersion; _streamSize = 0x1000; _stream = new uint8_t[_streamSize]; _position = 0; _saving = true; StreamState(_saving); file->write((char*)&_position, sizeof(_position)); file->write((char*)_stream, _position); delete[] _stream; if(_blockBuffer) { throw new std::runtime_error("A call to StreamEndBlock is missing."); } }
void Snapshotable::LoadSnapshot(istream* file, uint32_t stateVersion) { _stateVersion = stateVersion; _position = 0; _saving = false; file->read((char*)&_streamSize, sizeof(_streamSize)); _stream = new uint8_t[_streamSize]; file->read((char*)_stream, _streamSize); StreamState(_saving); AfterLoadState(); delete[] _stream; if(_blockBuffer) { throw new std::runtime_error("A call to StreamEndBlock is missing."); } }