载入中...
搜索中...
未找到
AnimCurveLibrary.h
浏览该文件的文档.
1#pragma once
2
3#include <cstddef>
4#include <memory>
5#include <optional>
6#include <span>
7#include <string_view>
8#include "common/Export.h"
9#include "common/Result.h"
10
11namespace eve::animation {
18public:
31 [[nodiscard]] eve::Result<void> load(std::span<const std::byte> bytes);
33 [[nodiscard]] bool contains(std::string_view source) const;
35 [[nodiscard]] std::size_t size() const noexcept;
45 [[nodiscard]] eve::Result<std::optional<float>> sample(std::string_view source, std::string_view channel,
46 double seconds, bool loop) const;
47
48private:
49 struct Impl;
50 std::unique_ptr<Impl> impl_;
51};
52} // namespace eve::animation
#define EVENGINE_API_WORLD
Definition Export.h:109
std::uint64_t bytes
Move-only, checked operation results for the common layer.
float size
Definition TreeMesh.cpp:156
const UnitySourceAsset & source
Move-only operation result carrying either a value or Status.
Definition Result.h:155
Owned scalar animation curves indexed by stable source and channel names.
AnimCurveLibrary & operator=(const AnimCurveLibrary &)=delete
AnimCurveLibrary(const AnimCurveLibrary &)=delete
~AnimCurveLibrary()
Destroy owned curve data without accessing external objects.
Build metadata (engine git commit, build time, third-party version).
Definition Build.cpp:16