| 25 | } |
| 26 | |
| 27 | void AudioChannel::copyFrom(const AudioChannel * sourceChannel) |
| 28 | { |
| 29 | bool isSafe = (sourceChannel && sourceChannel->length() >= length()); |
| 30 | ASSERT(isSafe); |
| 31 | if (!isSafe) return; |
| 32 | |
| 33 | if (sourceChannel->isSilent()) |
| 34 | { |
| 35 | zero(); |
| 36 | return; |
| 37 | } |
| 38 | memcpy(mutableData(), sourceChannel->data(), sizeof(float) * length()); |
| 39 | } |
| 40 | |
| 41 | void AudioChannel::copyFromRange(const AudioChannel * sourceChannel, int startFrame, int endFrame) |
| 42 | { |