载入中...
搜索中...
未找到
AttributeSet.h 文件参考
#include "common/Export.h"
#include "common/Result.h"
#include <cstdint>
#include <functional>
#include <memory>
#include <string>
#include <string_view>
#include <unordered_map>
#include <utility>
#include <vector>

浏览源代码.

类

struct  eve::attributes::ParsedAttributeOperation
 Parsed legacy operation and its normalized value. 更多...
 
class  eve::attributes::AttributeOperationRegistry
 Registry for explicitly named custom attribute policies. 更多...
 
struct  eve::attributes::AttributeModifier
 One canonical runtime modifier applied to one named attribute. 更多...
 
struct  eve::attributes::AttributeValue
 Runtime value and modifiers for exactly one attribute. 更多...
 
class  eve::attributes::AttributeSet
 Generic owning collection of canonical attributes and modifiers. 更多...
 

命名空间

namespace  eve
 Build metadata (engine git commit, build time, third-party version).
 
namespace  eve::attributes
 

类型定义

using eve::attributes::AttributeId = std::string
 
using eve::attributes::ModifierId = std::string
 
using eve::attributes::SourceId = std::string
 
using eve::attributes::ModifierPriority = std::int32_t
 
using eve::attributes::ModifierSequence = std::uint64_t
 

枚举

enum class  eve::attributes::AttributeOperation : std::uint8_t {
  eve::attributes::Add , eve::attributes::AdditivePercent , eve::attributes::MultiplicativePercent , eve::attributes::Override ,
  eve::attributes::ClampMin , eve::attributes::ClampMax , eve::attributes::Custom
}
 Built-in calculation operation for an attribute modifier. 更多...
 

函数

const char * eve::attributes::attributeOperationName (AttributeOperation operation) noexcept
 Stable spelling of a built-in attribute operation. @ownership The returned string is a borrowed, process-static literal; the caller must not free or retain it as mutable storage. @nullable Never null for a valid enum value; the unknown-value spelling is also a process-static literal for an invalid value. @lifetime Valid for the process lifetime. @thread Thread-safe because the function reads no mutable state. @reentrancy Reentrant; it performs no callbacks.
 
eve::Result< ParsedAttributeOperation > eve::attributes::parseAttributeOperation (std::string_view operation, double value)
 Parse a built-in operation spelling used by existing data and APIs.
 
double eve::attributes::computeAttributeValue (const AttributeValue &attribute, const AttributeOperationRegistry *customOperations=nullptr)
 Compute one attribute using the canonical operation order.