ManiVault 1.0.0
A Flexible and Extensible Visual Analytics Framework for High-Dimensional Data
Loading...
Searching...
No Matches
hdps::util::Serializable Class Reference

#include <Serializable.h>

Inheritance diagram for hdps::util::Serializable:
DockManager DockWidget hdps::AbstractManager hdps::LinkedData hdps::Project hdps::SelectionMap hdps::Workspace hdps::gui::ColorMapEditor1DNode hdps::gui::WidgetAction hdps::util::Version

Public Types

enum class  State { Idle , Reading , Writing }
 

Public Member Functions

 Serializable (const QString &serializationName="")
 
virtual QString getId () const final
 
virtual void setId (const QString &id) final
 
virtual QString getSerializationName () const final
 
virtual void setSerializationName (const QString &serializationName) final
 
virtual void fromVariantMap (const QVariantMap &variantMap)
 
virtual void fromParentVariantMap (const QVariantMap &parentVariantMap)
 
virtual QVariantMap toVariantMap () const
 
virtual void insertIntoVariantMap (QVariantMap &variantMap) const final
 
virtual void fromJsonDocument (const QJsonDocument &jsonDocument) final
 
virtual QJsonDocument toJsonDocument () const final
 
virtual void fromJsonFile (const QString &filePath="") final
 
virtual void toJsonFile (const QString &filePath="") final
 
virtual void makeUnique () final
 

Static Public Member Functions

static QString createId ()
 

Static Protected Member Functions

static void fromVariantMap (Serializable *serializable, const QVariantMap &variantMap)
 
static void fromVariantMap (Serializable &serializable, const QVariantMap &variantMap, const QString &key)
 
static QVariantMap toVariantMap (const Serializable *serializable)
 
static void insertIntoVariantMap (const Serializable &serializable, QVariantMap &variantMap, const QString &key)
 
static void insertIntoVariantMap (const Serializable &serializable, QVariantMap &variantMap)
 

Detailed Description

Serializable class

Serialize objects using Qt variants.

Author
Thomas Kroes

Member Enumeration Documentation

◆ State

Determines the state of the serializable object

Enumerator
Idle 
Reading 

The serializable object is not being read or written

Writing 

The serializable object is being read The serializable object is being written

Constructor & Destructor Documentation

◆ Serializable()

hdps::util::Serializable::Serializable ( const QString &  serializationName = "")

Construct with serialization name

Parameters
serializationNameSerialization name

Member Function Documentation

◆ createId()

QString hdps::util::Serializable::createId ( )
static

Creates a new globally unique identifier for a serializable object

Returns
Globally unique identifier

◆ fromJsonDocument()

void hdps::util::Serializable::fromJsonDocument ( const QJsonDocument &  jsonDocument)
finalvirtual

Load widget action from JSON document

Parameters
JSONdocument

◆ fromJsonFile()

void hdps::util::Serializable::fromJsonFile ( const QString &  filePath = "")
finalvirtual

Load from JSON file

Parameters
filePathPath to the JSON file (if none/invalid a file open dialog is automatically opened)

◆ fromParentVariantMap()

void hdps::util::Serializable::fromParentVariantMap ( const QVariantMap &  parentVariantMap)
virtual

Load from variant map located in parentVariantMap at the serialization name

Parameters
parentVariantMapParent variant map

◆ fromVariantMap() [1/3]

void hdps::util::Serializable::fromVariantMap ( const QVariantMap &  variantMap)
virtual

Load from variant map

Parameters
variantMapVariant map

Reimplemented in PointData, hdps::gui::ColorAction, hdps::gui::ColorMapAction, hdps::gui::ColorMapAxisAction, hdps::gui::ColorMapDiscreteAction, hdps::gui::ColorMapEditor1DAction, hdps::gui::ColorMapEditor1DNode, hdps::gui::DatasetPickerAction, hdps::gui::DecimalAction, hdps::gui::DecimalRectangleAction, hdps::gui::DirectoryPickerAction, hdps::gui::FilePickerAction, hdps::gui::GroupAction, hdps::gui::ImageAction, hdps::gui::IntegralAction, hdps::gui::IntegralRectangleAction, hdps::gui::LockingAction, hdps::gui::NumericalRangeAction< NumericalType, NumericalActionType >, hdps::gui::NumericalRangeAction< float, DecimalAction >, hdps::gui::NumericalRangeAction< std::int32_t, IntegralAction >, hdps::gui::OptionAction, hdps::gui::OptionsAction, hdps::gui::PixelSelectionAction, hdps::gui::ProjectSplashScreenAction, hdps::gui::StretchAction, hdps::gui::StringAction, hdps::gui::StringsAction, hdps::gui::ToggleAction, hdps::gui::VariantAction, hdps::gui::VersionAction, hdps::gui::WidgetAction, hdps::gui::WindowLevelAction, hdps::DataHierarchyItem, hdps::SelectionMap, hdps::LinkedData, hdps::plugin::Plugin, ClusterData, Clusters, Images, DimensionPickerAction, DimensionsPickerAction, Points, hdps::ActionsManager, hdps::DataHierarchyManager, hdps::DataManager, DockManager, DockWidget, hdps::PluginManager, ProjectManager, ViewPluginDockWidget, hdps::WorkspaceManager, hdps::Project, hdps::DatasetImpl, hdps::util::Version, hdps::plugin::ViewPlugin, hdps::Workspace, and hdps::AbstractDataHierarchyManager.

◆ fromVariantMap() [2/3]

void hdps::util::Serializable::fromVariantMap ( Serializable serializable,
const QVariantMap &  variantMap,
const QString &  key 
)
staticprotected

Load from variant map

Parameters
serializableReference to serializable object
variantMapVariant map
keyVariant map key

◆ fromVariantMap() [3/3]

void hdps::util::Serializable::fromVariantMap ( Serializable serializable,
const QVariantMap &  variantMap 
)
staticprotected

Load serializable object from variant map

Parameters
serializablePointer to serializable object
Variantmap

◆ getId()

QString hdps::util::Serializable::getId ( ) const
finalvirtual

Get id

Returns
Globally unique identifier of the serializable object

◆ getSerializationName()

QString hdps::util::Serializable::getSerializationName ( ) const
finalvirtual

Get serialization name

Returns
Serialization name

◆ insertIntoVariantMap() [1/3]

void hdps::util::Serializable::insertIntoVariantMap ( const Serializable serializable,
QVariantMap &  variantMap 
)
staticprotected

Save serializable object in variantMap

Parameters
serializableReference to serializable object
variantMapVariant map

◆ insertIntoVariantMap() [2/3]

void hdps::util::Serializable::insertIntoVariantMap ( const Serializable serializable,
QVariantMap &  variantMap,
const QString &  key 
)
staticprotected

Save serializable object in variantMap with key

Parameters
serializableReference to serializable object
variantMapVariant map
keyVariant map key

◆ insertIntoVariantMap() [3/3]

void hdps::util::Serializable::insertIntoVariantMap ( QVariantMap &  variantMap) const
finalvirtual

Save into variantMap

Parameters
variantMapVariant map

◆ makeUnique()

void hdps::util::Serializable::makeUnique ( )
finalvirtual

Assigns a fresh new identifier to the serializable object

◆ setId()

void hdps::util::Serializable::setId ( const QString &  id)
finalvirtual

Set globally unique identifier (only use this function when strictly necessary and when the ramifications are understood, undefined behaviour might happen otherwise)

Parameters
idGlobally unique identifier of the serializable object

◆ setSerializationName()

void hdps::util::Serializable::setSerializationName ( const QString &  serializationName)
finalvirtual

Set serialization name to name

Parameters
serializationNameSerialization name

◆ toJsonDocument()

QJsonDocument hdps::util::Serializable::toJsonDocument ( ) const
finalvirtual

Save widget action to JSON document

Returns
JSON document

◆ toJsonFile()

void hdps::util::Serializable::toJsonFile ( const QString &  filePath = "")
finalvirtual

Save to JSON file

Parameters
filePathPath to the JSON file (if none/invalid a file save dialog is automatically opened)

◆ toVariantMap() [1/2]

QVariantMap hdps::util::Serializable::toVariantMap ( ) const
virtual

Save to variant map

Returns
Variant map

Reimplemented in PointData, hdps::gui::ColorAction, hdps::gui::ColorMapAction, hdps::gui::ColorMapAxisAction, hdps::gui::ColorMapDiscreteAction, hdps::gui::ColorMapEditor1DAction, hdps::gui::ColorMapEditor1DNode, hdps::gui::DatasetPickerAction, hdps::gui::DecimalAction, hdps::gui::DecimalRectangleAction, hdps::gui::DirectoryPickerAction, hdps::gui::FilePickerAction, hdps::gui::GroupAction, hdps::gui::ImageAction, hdps::gui::IntegralAction, hdps::gui::IntegralRectangleAction, hdps::gui::LockingAction, hdps::gui::NumericalRangeAction< NumericalType, NumericalActionType >, hdps::gui::NumericalRangeAction< float, DecimalAction >, hdps::gui::NumericalRangeAction< std::int32_t, IntegralAction >, hdps::gui::OptionAction, hdps::gui::OptionsAction, hdps::gui::PixelSelectionAction, hdps::gui::ProjectSplashScreenAction, hdps::gui::StretchAction, hdps::gui::StringAction, hdps::gui::StringsAction, hdps::gui::ToggleAction, hdps::gui::VariantAction, hdps::gui::VersionAction, hdps::gui::WidgetAction, hdps::gui::WindowLevelAction, hdps::DataHierarchyItem, hdps::SelectionMap, hdps::LinkedData, hdps::plugin::Plugin, ClusterData, Clusters, Images, DimensionPickerAction, DimensionsPickerAction, Points, hdps::ActionsManager, hdps::DataHierarchyManager, hdps::DataManager, DockManager, DockWidget, hdps::PluginManager, ProjectManager, ViewPluginDockWidget, hdps::WorkspaceManager, hdps::Project, hdps::DatasetImpl, hdps::util::Version, hdps::plugin::ViewPlugin, hdps::Workspace, and hdps::AbstractDataHierarchyManager.

◆ toVariantMap() [2/2]

QVariantMap hdps::util::Serializable::toVariantMap ( const Serializable serializable)
staticprotected

Save serializable object to variant map

Parameters
serializablePointer to serializable object
Returns
Variant map

The documentation for this class was generated from the following files: