ReUseX  0.0.5
3D Point Cloud Processing for Building Reuse
Loading...
Searching...
No Matches
reusex::io::speckle::Collection Struct Reference

Collection / container for grouping objects. More...

#include <speckle.hpp>

Inheritance diagram for reusex::io::speckle::Collection:
Collaboration diagram for reusex::io::speckle::Collection:

Public Member Functions

 Collection ()
Public Member Functions inherited from reusex::io::speckle::Base
virtual ~Base ()=default

Public Attributes

std::string collectionType
int version = 0
 Speckle SDK version marker.
bool embed_elements = false
 When true, child elements are serialized inline (under the key elements, no @ prefix) instead of as detached references under @elements.
std::vector< std::shared_ptr< InstanceDefinitionProxy > > instanceDefinitionProxies
Public Attributes inherited from reusex::io::speckle::Base
std::string speckle_type = "Base"
std::string applicationId
std::string name
std::map< std::string, nlohmann::json > properties
 Custom properties — serialized nested under a "properties" sub-path (Speckle v3 DataObject convention).
std::vector< std::shared_ptr< Base > > elements
 Child objects (serialized as detached @elements).

Detailed Description

Collection / container for grouping objects.

Speckle SDK v3 keeps proxy lists (instance definitions, render materials, color proxies) as top-level siblings of @elements on the root collection, so they live here rather than being mixed into the elements list.

Definition at line 115 of file speckle.hpp.

Constructor & Destructor Documentation

◆ Collection()

reusex::io::speckle::Collection::Collection ( )
inline

Definition at line 132 of file speckle.hpp.

References reusex::io::speckle::Base::speckle_type.

Member Data Documentation

◆ collectionType

std::string reusex::io::speckle::Collection::collectionType

Definition at line 116 of file speckle.hpp.

◆ embed_elements

bool reusex::io::speckle::Collection::embed_elements = false

When true, child elements are serialized inline (under the key elements, no @ prefix) instead of as detached references under @elements.

Required for clients (e.g. the reuse-x webapp) that read speckleRoot.elements directly without resolving Speckle-style detached references — the JS SDK Traverser keeps the @elements key verbatim, so the webapp never sees the data when it's detached. Only enable for collections small enough to fit comfortably in a single Speckle object payload.

Definition at line 128 of file speckle.hpp.

◆ instanceDefinitionProxies

std::vector<std::shared_ptr<InstanceDefinitionProxy> > reusex::io::speckle::Collection::instanceDefinitionProxies

Definition at line 130 of file speckle.hpp.

◆ version

int reusex::io::speckle::Collection::version = 0

Speckle SDK version marker.

Set to 3 on the root collection of a v3-style model; leave at 0 elsewhere (the field is then omitted).

Definition at line 119 of file speckle.hpp.


The documentation for this struct was generated from the following file: