Files
AronaSlate/Source/Arona/UI/Widget/PatternThumbnail/SSamplePatternThumbnail.cpp
2024-01-25 11:21:15 +08:00

40 lines
1021 B
C++

// Fill out your copyright notice in the Description page of Project Settings.
#include "SSamplePatternThumbnail.h"
#include "Async.h"
#include "SlateApplication.h"
#include "SlateOptMacros.h"
#include "ExecutionTime.h"
#include "Pattern/SamplePatternInstance.h"
#include "PluginHost/Sampler.h"
#include "UI/Widget/SUpdatableImage.h"
#include "UI/Widget/Thumbnail.h"
BEGIN_SLATE_FUNCTION_BUILD_OPTIMIZATION
TArray<float> FSampleWaveformHandle::GetWaveform(int32 SizeX) const
{
const FSampler* Sampler = SampleInstance->GetInstanceOwner()->GetSampler();
TArray<TArray64<float>> Copy = Sampler->GetSampleBuffer(); // 拷贝以防在渲染时被修改
uint32 Count = Sampler->GetFrameCount();
TRange<uint32> Range = SampleInstance->GetRange();
return Thumbnail::GenerateWaveformData(SizeX, Copy, Count, Range);
}
void SSamplePatternThumbnail::Construct(const FArguments& InArgs, FSampler* InSampler)
{
ChildSlot
[
];
}
void SSamplePatternThumbnail::Redraw()
{
}
END_SLATE_FUNCTION_BUILD_OPTIMIZATION