Class instance_data

Nested Relationships

Nested Types

Class Documentation

class instance_data

Public Functions

void ensure_loaded() const
inline instance_data(ifcopenshell::file *file, const ifcopenshell::declaration *declaration, uint32_t id, lazy_tag)
inline const ifcopenshell::declaration *declaration() const
inline ifcopenshell::file *file() const
inline uint32_t identity() const
inline uint32_t id() const
inline instance_data(ifcopenshell::file *file, const ifcopenshell::declaration *declaration, uint32_t id, in_memory_attribute_storage &&storage)
inline instance_data(ifcopenshell::file *file, const ifcopenshell::declaration *declaration, uint32_t id, rocks_db_attribute_storage &&storage)
instance_data(const instance_data &other) = delete
instance_data &operator=(const instance_data &other) = delete
instance_data &operator=(instance_data &&other) = delete
instance_data(instance_data &&other) noexcept = delete
inline ~instance_data()
attribute_value get_attribute_value(size_t attribute_index) const
template<typename T>
inline void set_attribute_value(std::size_t attribute_index, T &&value)
template<typename T>
inline bool has_attribute_value(std::size_t attribute_index) const
void to_string(std::ostream &stream, bool uppercase = false) const

Public Members

mutable std::optional<in_memory_attribute_storage> storage_

Protected Functions

template<typename T>
T *get_storage_of_type() const
void populate_derived_()

Protected Attributes

ifcopenshell::file *file_
const ifcopenshell::declaration *declaration_
uint32_t identity_
uint32_t id_

Protected Static Attributes

static std::atomic_uint32_t counter_

Friends

friend struct ifcopenshell::impl::in_memory_file_storage
struct lazy_tag