| 117 | // assign(begin, end, 0); // Default timestamp to 0 |
| 118 | // } |
| 119 | template <typename It> void assign(It begin, It end, fl::u32 timestamp) FL_NOEXCEPT { |
| 120 | mSignedPcm.assign(begin, end); |
| 121 | mTimestamp = timestamp; |
| 122 | // Pre-compute zero crossings for O(1) access |
| 123 | initZeroCrossings(); |
| 124 | // RMS is computed lazily on first access to avoid blocking |
| 125 | mRmsComputed = false; |
| 126 | } |
| 127 | const VectorPCM &pcm() const FL_NOEXCEPT { return mSignedPcm; } |
| 128 | VectorPCM &pcm_mutable() FL_NOEXCEPT { return mSignedPcm; } |
| 129 | fl::u32 timestamp() const FL_NOEXCEPT { return mTimestamp; } |
no outgoing calls
no test coverage detected