Cogs.Core
VectorFieldComponent.cpp
1#include "VectorFieldComponent.h"
2#include "Types.h"
3
4using namespace Cogs::Reflection;
5
6namespace Cogs::Core::VectorField
7{
8 void VectorFieldComponent::registerType()
9 {
10 Field fields[] = {
11 Field(Name("scale"), &VectorFieldComponent::scale),
12 Field(Name("length"), &VectorFieldComponent::length),
13 Field(Name("tailScale"), &VectorFieldComponent::tailScale),
14 Field(Name("positions"), &VectorFieldComponent::positions),
15 Field(Name("colors"), &VectorFieldComponent::colors),
16 Field(Name("directions"), &VectorFieldComponent::directions),
17 Field(Name("speed"), &VectorFieldComponent::speed),
18 Field(Name("animation"), &VectorFieldComponent::animation),
19 Field(Name("animationFade"), &VectorFieldComponent::animationFade),
20 Field(Name("animationUseSpeed"), &VectorFieldComponent::animationUseSpeed),
21 Field(Name("animationScale"), &VectorFieldComponent::animationScale),
22 Field(Name("animationSpeed"), &VectorFieldComponent::animationSpeed),
23 Field::create(Name("animationFadeTime"), &VectorFieldComponent::animationFadeTime).setRange(0.0f, 0.5f),
24 Field(Name("centerArrow"), &VectorFieldComponent::centerArrow),
25 Field(Name("dither"), &VectorFieldComponent::dither),
26 Field(Name("ditherSize"), &VectorFieldComponent::ditherSize)
27 };
28 TypeDatabase::createType<VectorFieldComponent>()
29 .setFields(fields)
30 .setBase<Component>();
31 }
32}// namespace ...
Field definition describing a single data member of a data structure.
Definition: Field.h:68
static FieldWrapper< Field, FieldType > create(const Name &name, FieldType ClassType::*field)
Creates a new field instance, returning a wrapper for type safe continuation style setup.
Definition: Field.inl:29
Contains reflection support.
Definition: Component.h:11
Represents an unique name.
Definition: Name.h:70