29 #ifndef CDPL_VIS_FEATURECONTAINEROBJECT3DWRITER_HPP
30 #define CDPL_VIS_FEATURECONTAINEROBJECT3DWRITER_HPP
52 template <
typename WriterImpl>
80 operator const void*()
const;
105 template <
typename WriterImpl>
111 o3dWriter.setParent(
this);
115 template <
typename WriterImpl>
121 template <
typename WriterImpl>
125 auto obj = o3dFactory.create(cntnr);
127 o3dWriter.
write(*obj);
129 }
catch (
const std::exception& e) {
130 throw Base::IOError(std::string(
"FeatureContainerObject3DWriter: ") + e.what());
136 template <
typename WriterImpl>
139 return o3dWriter.operator
const void*();
142 template <
typename WriterImpl>
145 return o3dWriter.operator!();
148 template <
typename WriterImpl>
Definition of exception classes.
Definition of class CDPL::Base::DataWriter.
Definition of class CDPL::Vis::FeatureContainerObject3DFactory.
void setParent(const ControlParameterContainer *cntnr)
Sets or removes the parent control-parameter container used to resolve requests for missing entries.
void invokeIOCallbacks(double progress) const
Invokes all registered I/O callback functions with the argument *this.
Interface for writing data objects of a given type to an arbitrary data sink.
Definition: DataWriter.hpp:63
virtual DataWriter & write(const DataType &obj)=0
Writes the data object obj.
Thrown to indicate that an I/O operation has failed because of physical (e.g. broken pipe) or logical...
Definition: Base/Exceptions.hpp:250
Abstract base class for containers holding a sequence of Pharm::Feature objects with associated prope...
Definition: FeatureContainer.hpp:55
Class implementing the creation of Vis::Object3D instances providing a 3D representation of Pharm::Fe...
Definition: FeatureContainerObject3DFactory.hpp:59
Generic writer that converts Pharm::FeatureContainer instances into a 3D scene representation (via Vi...
Definition: FeatureContainerObject3DWriter.hpp:54
~FeatureContainerObject3DWriter()
Destructor; closes the underlying Object3D writer.
Definition: FeatureContainerObject3DWriter.hpp:116
FeatureContainerObject3DWriter(const FeatureContainerObject3DWriter &)=delete
bool operator!() const
Tells whether the underlying writer is in a bad (non-writable) state.
Definition: FeatureContainerObject3DWriter.hpp:143
Base::DataWriter< Pharm::FeatureContainer > & write(const Pharm::FeatureContainer &cntnr)
Builds a 3D scene representation of cntnr and forwards it to the underlying WriterImpl.
Definition: FeatureContainerObject3DWriter.hpp:122
FeatureContainerObject3DWriter & operator=(const FeatureContainerObject3DWriter &)=delete
FeatureContainerObject3DWriter(std::ostream &os)
Constructs a FeatureContainerObject3DWriter instance that will write 3D models of Pharm::FeatureConta...
Definition: FeatureContainerObject3DWriter.hpp:106
void close()
Closes the underlying Object3D writer.
Definition: FeatureContainerObject3DWriter.hpp:149
The namespace of the Chemical Data Processing Library.