29 #ifndef CDPL_VIS_FEATURECONTAINEROBJECT3DWRITER_HPP
30 #define CDPL_VIS_FEATURECONTAINEROBJECT3DWRITER_HPP
46 template <
typename WriterImpl>
62 operator const void*()
const;
79 template <
typename WriterImpl>
85 o3dWriter.setParent(
this);
89 template <
typename WriterImpl>
95 template <
typename WriterImpl>
99 auto obj = o3dFactory.create(cntnr);
101 o3dWriter.
write(*obj);
103 }
catch (
const std::exception& e) {
104 throw Base::IOError(std::string(
"FeatureContainerObject3DWriter: ") + e.what());
110 template <
typename WriterImpl>
113 return o3dWriter.operator
const void*();
116 template <
typename WriterImpl>
119 return o3dWriter.operator!();
122 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.
An 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
FeatureContainer.
Definition: FeatureContainer.hpp:53
Class implementing the creation of Vis::Object3D instances providing a 3D representation of Pharm::Fe...
Definition: FeatureContainerObject3DFactory.hpp:59
Definition: FeatureContainerObject3DWriter.hpp:48
~FeatureContainerObject3DWriter()
Definition: FeatureContainerObject3DWriter.hpp:90
FeatureContainerObject3DWriter(const FeatureContainerObject3DWriter &)=delete
bool operator!() const
Tells whether the writer is in a bad state.
Definition: FeatureContainerObject3DWriter.hpp:117
Base::DataWriter< Pharm::FeatureContainer > & write(const Pharm::FeatureContainer &cntnr)
Writes the data object obj.
Definition: FeatureContainerObject3DWriter.hpp:96
FeatureContainerObject3DWriter & operator=(const FeatureContainerObject3DWriter &)=delete
FeatureContainerObject3DWriter(std::ostream &os)
Constructs a FeatureContainerObject3DWriter instance that will write 3D models of Pharm::FeatureConta...
Definition: FeatureContainerObject3DWriter.hpp:80
void close()
Writes format dependent data (if required) to mark the end of output.
Definition: FeatureContainerObject3DWriter.hpp:123
The namespace of the Chemical Data Processing Library.