Audacity  3.0.3
SilentBlockFile.h
Go to the documentation of this file.
1 /**********************************************************************
2 
3  Audacity: A Digital Audio Editor
4  Audacity(R) is copyright (c) 1999-2010 Audacity Team.
5  License: GPL v2. See License.txt.
6 
7  SilentBlockFile.h
8 
9  Dominic Mazzoni
10  Vaughan Johnson
11 
12 **********************************************************************/
13 
14 #ifndef __AUDACITY_SILENT_BLOCKFILE__
15 #define __AUDACITY_SILENT_BLOCKFILE__
16 
17 #include "../BlockFile.h"
18 
19 class DirManager;
20 
22 class SilentBlockFile final : public BlockFile {
23  public:
24 
25  // Constructor / Destructor
26 
27  SilentBlockFile(size_t sampleLen);
28 
29  virtual ~SilentBlockFile();
30 
31  // Reading
32 
34  bool ReadSummary(ArrayOf<char> &data) override;
37  size_t start, size_t len, bool mayThrow) const override;
38 
40  BlockFilePtr Copy(wxFileNameWrapper &&newFileName) override;
42  void SaveXML(XMLWriter &xmlFile) override;
43  DiskByteCount GetSpaceUsage() const override;
44  void Recover() override { };
45 
46  static BlockFilePtr BuildFromXML(DirManager &dm, const wxChar **attrs);
47 };
48 
49 #endif
50 
XMLWriter
Base class for XMLFileWriter and XMLStringWriter that provides the general functionality for creating...
Definition: XMLWriter.h:23
SilentBlockFile::~SilentBlockFile
virtual ~SilentBlockFile()
Definition: SilentBlockFile.cpp:26
wxFileNameWrapper
Definition: wxFileNameWrapper.h:21
SilentBlockFile::ReadData
size_t ReadData(samplePtr data, sampleFormat format, size_t start, size_t len, bool mayThrow) const override
Read the data section of the disk file.
Definition: SilentBlockFile.cpp:37
SilentBlockFile::SilentBlockFile
SilentBlockFile(size_t sampleLen)
Definition: SilentBlockFile.cpp:18
SilentBlockFile::GetSpaceUsage
DiskByteCount GetSpaceUsage() const override
Definition: SilentBlockFile.cpp:90
format
int format
Definition: ExportPCM.cpp:56
SilentBlockFile::ReadSummary
bool ReadSummary(ArrayOf< char > &data) override
Read the summary section of the disk file.
Definition: SilentBlockFile.cpp:30
sampleFormat
sampleFormat
Definition: SampleFormat.h:29
samplePtr
char * samplePtr
Definition: SampleFormat.h:49
SilentBlockFile::Copy
BlockFilePtr Copy(wxFileNameWrapper &&newFileName) override
Create a NEW block file identical to this one.
Definition: SilentBlockFile.cpp:83
SilentBlockFile
A BlockFile containing nothing but silence. Saves disk space.
Definition: SilentBlockFile.h:22
SilentBlockFile::Recover
void Recover() override
Definition: SilentBlockFile.h:44
SilentBlockFile::BuildFromXML
static BlockFilePtr BuildFromXML(DirManager &dm, const wxChar **attrs)
static
Definition: SilentBlockFile.cpp:59
SilentBlockFile::SaveXML
void SaveXML(XMLWriter &xmlFile) override
Write an XML representation of this file.
Definition: SilentBlockFile.cpp:45
ArrayOf< char >