MCPcopy Create free account
hub / github.com/Geode-solutions/OpenGeode / AttributeProperties

Class AttributeProperties

include/geode/basic/attribute_utils.hpp:44–81  ·  view source on GitHub ↗

! * Struct holding Attribute flags used by the AttributeManager for * updating/computing attribute values */

Source from the content-addressed store, hash-verified

42 * updating/computing attribute values
43 */
44 struct AttributeProperties
45 {
46 AttributeProperties() = default;
47
48 AttributeProperties( bool is_assignable, bool is_interpolable )
49 : assignable( is_assignable ), interpolable( is_interpolable )
50 {
51 }
52
53 AttributeProperties(
54 bool is_assignable, bool is_interpolable, bool is_transferable )
55 : assignable( is_assignable ),
56 interpolable( is_interpolable ),
57 transferable( is_transferable )
58 {
59 }
60
61 template < typename Archive >
62 void serialize( Archive& serializer )
63 {
64 serializer.ext( *this,
65 Growable< Archive, AttributeProperties >{
66 { []( Archive& archive, AttributeProperties& properties ) {
67 archive.value1b( properties.assignable );
68 archive.value1b( properties.interpolable );
69 },
70 []( Archive& archive,
71 AttributeProperties& properties ) {
72 archive.value1b( properties.assignable );
73 archive.value1b( properties.interpolable );
74 archive.value1b( properties.transferable );
75 } } } );
76 }
77
78 bool assignable{ false };
79 bool interpolable{ false };
80 bool transferable{ true };
81 };
82
83 /*!
84 * Helper struct to interpolate an Attribute value.

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected