![]() |
ImFusion SDK 4.3
|
#include <ImFusion/Base/CompoundData.h>
Interface for datasets that are formed by one or multiple other nested Data instances. More...
Interface for datasets that are formed by one or multiple other nested Data instances.
Certain Data types may hold other instances of Data internally. One such example is for instance TrackedSharedImageSet which is a SharedImageSet that internally maintains a set of TrackingSequences to define the poses of the individual images. Implementing the CompoundData interface enables such Data types to expose their internal datasets to the outside in a generic fashion so that for instance the DataItemModel knows about them and the DataWidget can show the nested datasets underneath the main dataset.
In contrast to a DataGroup however, the CompoundData interface provides only read access to the children. This is because it's meant to model situations where the nested datasets are inherently bound to the parent dataset and not to be moved or taken from the outside.
Public Member Functions | |
virtual DataList | children () const =0 |
Returns the list of direct children of this group. | |
Public Attributes | |
Signal< Data * > | signalChildAdded |
Signal emitted when a new Data instance has been added to children() | |
Signal< Data * > | signalChildMoved |
Signal emitted when a Data instance has changed its position in children() | |
Signal< Data * > | signalChildAboutToBeRemoved |
Signal emitted when a Data instance is about to be removed or taken from children() | |
|
pure virtual |
Returns the list of direct children of this group.
Implemented in AnatomicalStructureCollection, ASCSet, DataGroup, DataItem, StereoSharedImageSet, StreamGroup< Proxy >, StreamGroup< StereoImageStream >, and TrackedSharedImageSet.