74 void touchSample (int64
sample)
const noexcept;
88 std::unique_ptr<MemoryMappedFile> map;
89 int64 dataChunkStart, dataLength;
99 inline const void*
sampleToPointer (int64
sample)
const noexcept {
return addBytesToPointer (map->getData(), sampleToFilePos (
sample) - map->getRange().getStart()); }
102 template <
typename SampleType,
typename Endianness>
105 using SourceType = AudioData::Pointer <SampleType, Endianness, AudioData::Interleaved, AudioData::Const>;
107 return SourceType (addBytesToPointer (sampleToPointer (
startSampleInFile), ((
int) bitsPerSample / 8) * channel), (
int) numChannels)
108 .findMinAndMax ((
size_t) numSamples);