forked from audacity/audacity
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathPCMAliasBlockFile.h
More file actions
52 lines (38 loc) · 1.79 KB
/
Copy pathPCMAliasBlockFile.h
File metadata and controls
52 lines (38 loc) · 1.79 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
/**********************************************************************
Audacity: A Digital Audio Editor
PCMAliasBlockFile.h
Joshua Haberman
**********************************************************************/
#ifndef __AUDACITY_PCMALIASBLOCKFILE__
#define __AUDACITY_PCMALIASBLOCKFILE__
#include "../BlockFile.h"
class DirManager;
/// An AliasBlockFile that references uncompressed data in an existing file
class PCMAliasBlockFile /* not final */ : public AliasBlockFile
{
public:
/// Constructs a PCMAliasBlockFile, writing the summary to disk
PCMAliasBlockFile(wxFileNameWrapper &&baseFileName,
wxFileNameWrapper &&aliasedFileName,
sampleCount aliasStart,
size_t aliasLen, int aliasChannel);
///Constructs a PCMAliasBlockFile with the option of not writing to disk
PCMAliasBlockFile(wxFileNameWrapper &&fileName,
wxFileNameWrapper &&aliasedFileName,
sampleCount aliasStart,
size_t aliasLen, int aliasChannel,bool writeSummary);
PCMAliasBlockFile(wxFileNameWrapper &&existingSummaryFileName,
wxFileNameWrapper &&aliasedFileName,
sampleCount aliasStart,
size_t aliasLen, int aliasChannel,
float min, float max, float rms);
virtual ~PCMAliasBlockFile();
/// Reads the specified data from the aliased file using libsndfile
size_t ReadData(samplePtr data, sampleFormat format,
size_t start, size_t len, bool mayThrow) const override;
void SaveXML(XMLWriter &xmlFile) override;
BlockFilePtr Copy(wxFileNameWrapper &&fileName) override;
void Recover() override;
static BlockFilePtr BuildFromXML(DirManager &dm, const wxChar **attrs);
};
#endif