AvogadroLibs 2.1.0-20261111
Loading...
Searching...
No Matches
MoleculeInfo Class Reference

All layer dependent data for one molecule: which layers are hidden (visible) or refuse edits (locked), per-plugin key-value data (enable), and per-plugin custom data (settings). More...

#include <avogadro/core/moleculeinfo.h>

Public Member Functions

 MoleculeInfo (const MoleculeInfo &other)
MoleculeInfo & operator= (const MoleculeInfo &other)
 MoleculeInfo (MoleculeInfo &&)=default
MoleculeInfo & operator= (MoleculeInfo &&)=default
void clear ()

Public Attributes

std::vector< bool > visible
std::vector< bool > locked
std::map< std::string, std::vector< bool > > enable
std::map< std::string, Core::Array< LayerDataPtr > > settings
Layer layer
std::set< std::string > loaded

Detailed Description

Owned by the Molecule it belongs to, and shared with any undo command that needs it to outlive a single operation.

Constructor & Destructor Documentation

◆ MoleculeInfo()

MoleculeInfo ( const MoleculeInfo & other)

Copy every layer property, cloning the per-plugin settings.

Each molecule owns its own settings objects rather than sharing them: layers are per molecule, so editing a copy's settings must not reach back into the molecule it was copied from.


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