X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fsilentfilesource.h;h=5cdade3751da049a803136976f81e6b81676e488;hb=16f91163e5989ebdd224fbbe976e10e24b778d06;hp=cbb123139a78b3c6b0b71f072f1289c0fd35b57d;hpb=449aab3c465bbbf66d221fac3d7ea559f1720357;p=ardour.git diff --git a/libs/ardour/ardour/silentfilesource.h b/libs/ardour/ardour/silentfilesource.h index cbb123139a..5cdade3751 100644 --- a/libs/ardour/ardour/silentfilesource.h +++ b/libs/ardour/ardour/silentfilesource.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2007 Paul Davis + Copyright (C) 2007 Paul Davis This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,49 +17,54 @@ */ -#ifndef __ardour_silentfilesource_h__ +#ifndef __ardour_silentfilesource_h__ #define __ardour_silentfilesource_h__ #include -#include +#include "ardour/audiofilesource.h" namespace ARDOUR { class SilentFileSource : public AudioFileSource { - public: - virtual ~SilentFileSource (); - - int update_header (nframes_t when, struct tm&, time_t) { return 0; } +public: + int update_header (framepos_t /*when*/, struct tm&, time_t) { return 0; } int flush_header () { return 0; } float sample_rate () const { return _sample_rate; } - void set_length (nframes_t len); - - bool destructive() const { return false; } - bool can_be_analysed() const { return false; } - - protected: + void set_length (framecnt_t len) { _length = len; } - float _sample_rate; + bool destructive() const { return false; } + bool can_be_analysed() const { return false; } - SilentFileSource (Session&, const XMLNode&, nframes_t nframes, float sample_rate); + bool clamped_at_unity() const { return false; } +protected: friend class SourceFactory; - nframes_t read_unlocked (Sample *dst, nframes_t start, nframes_t cnt) const { + SilentFileSource (Session& s, const XMLNode& x, framecnt_t len, float srate) + : Source (s, x) + , AudioFileSource (s, x, false) + , _sample_rate(srate) + { + _length = len; + } + + framecnt_t read_unlocked (Sample *dst, framepos_t /*start*/, framecnt_t cnt) const { memset (dst, 0, sizeof (Sample) * cnt); return cnt; } - nframes_t write_unlocked (Sample *dst, nframes_t cnt) { return 0; } + framecnt_t write_unlocked (Sample */*dst*/, framecnt_t /*cnt*/) { return 0; } void set_header_timeline_position () {} - int read_peaks_with_fpp (PeakData *peaks, nframes_t npeaks, nframes_t start, nframes_t cnt, double samples_per_unit, nframes_t fpp) const { + int read_peaks_with_fpp (PeakData *peaks, framecnt_t npeaks, framepos_t /*start*/, framecnt_t /*cnt*/, + double /*samples_per_unit*/, framecnt_t /*fpp*/) const { memset (peaks, 0, sizeof (PeakData) * npeaks); return 0; } + float _sample_rate; }; } // namespace ARDOUR