Inviwo 0.9.12-pre
Inviwo documentation
|
Public Member Functions | |
Rasterizer (std::string_view identifier="", std::string_view displayName="") | |
virtual void | initializeResources () override |
virtual void | configureShader (Shader &shader) |
virtual void | setUniforms (Shader &shader) |
virtual void | process () override |
virtual void | setValid () override |
void | setValidDelayed () |
virtual void | rasterize (const ivec2 &imageSize, const mat4 &worldMatrixTransform)=0 |
Render the fragments, with all setup and evaluation taken care of. If opaque is set, a standard render call instead. | |
virtual UseFragmentList | usesFragmentLists () const =0 |
Query whether fragments will be emitted. | |
virtual std::optional< mat4 > | boundingBox () const |
Return the world space bounding box of the rendered geometry. | |
virtual std::optional< RaycastingState > | getRaycastingState () const |
Query raycasting state used for volume rendering. | |
virtual Document | getInfo () const |
virtual void | propagateEvent (Event *event, Outport *source) override |
Public Member Functions inherited from inviwo::Processor | |
Processor (std::string_view identifier="", std::string_view displayName="") | |
virtual const ProcessorInfo & | getProcessorInfo () const =0 |
const std::string & | getClassIdentifier () const |
const std::string & | getCategory () const |
CodeState | getCodeState () const |
const Tags & | getTags () const |
void | setIdentifier (std::string_view identifier) |
virtual const std::string & | getIdentifier () const override |
NameDispatcherHandle | onIdentifierChange (std::function< void(std::string_view, std::string_view)> callback) |
void | setDisplayName (std::string_view displayName) |
const std::string & | getDisplayName () const |
NameDispatcherHandle | onDisplayNameChange (std::function< void(std::string_view, std::string_view)> callback) |
virtual void | setProcessorWidget (std::unique_ptr< ProcessorWidget > processorWidget) |
ProcessorWidget * | getProcessorWidget () const |
bool | hasProcessorWidget () const |
virtual void | setNetwork (ProcessorNetwork *network) |
ProcessorNetwork * | getNetwork () const |
Port * | getPort (std::string_view identifier) const |
Inport * | getInport (std::string_view identifier) const |
Outport * | getOutport (std::string_view identifier) const |
const std::vector< Inport * > & | getInports () const |
const std::vector< Outport * > & | getOutports () const |
const std::string & | getPortGroup (Port *port) const |
std::vector< std::string > | getPortGroups () const |
const std::vector< Port * > & | getPortsInGroup (std::string_view portGroup) const |
const std::vector< Port * > & | getPortsInSameGroup (Port *port) const |
bool | allInportsConnected () const |
bool | allInportsAreReady () const |
bool | isSource () const |
bool | isSink () const |
bool | isReady () const |
const ProcessorStatus & | status () const |
virtual void | doIfNotReady () |
virtual void | invalidate (InvalidationLevel invalidationLevel, Property *modifiedProperty=nullptr) override |
void | addInteractionHandler (InteractionHandler *interactionHandler) |
void | removeInteractionHandler (InteractionHandler *interactionHandler) |
bool | hasInteractionHandler () const |
const std::vector< InteractionHandler * > & | getInteractionHandlers () const |
virtual void | invokeEvent (Event *event) override |
virtual Processor * | getProcessor () override |
virtual const Processor * | getProcessor () const override |
virtual const PropertyOwner * | getOwner () const override |
virtual PropertyOwner * | getOwner () override |
virtual InviwoApplication * | getInviwoApplication () override |
virtual void | serialize (Serializer &s) const override |
virtual void | deserialize (Deserializer &d) override |
template<typename T , typename std::enable_if_t< std::is_base_of< Inport, T >::value, int > = 0> | |
T & | addPort (std::unique_ptr< T > port, std::string_view portGroup="default") |
template<typename T , typename std::enable_if_t< std::is_base_of< Outport, T >::value, int > = 0> | |
T & | addPort (std::unique_ptr< T > port, std::string_view portGroup="default") |
template<typename T > | |
T & | addPort (T &port, std::string_view portGroup="default") |
template<typename... Ts> | |
void | addPorts (Ts &... ports) |
Port * | removePort (std::string_view identifier) |
Inport * | removePort (Inport *port) |
Outport * | removePort (Outport *port) |
virtual bool | isConnectionActive (Inport *inport, Outport *outport) const |
virtual void | accept (NetworkVisitor &visitor) |
Accept a NetworkVisitor, the visitor will visit this and then each Property of the Processor in an undefined order. The Visitor will then visit each Properties's properties and so on. | |
Public Member Functions inherited from inviwo::PropertyOwner | |
virtual | ~PropertyOwner () |
Removes all properties and notifies its observers of the removal. | |
virtual void | addProperty (Property *property, bool owner=true) |
virtual void | addProperty (Property &property) |
virtual Property * | addProperty (std::unique_ptr< Property > property) |
template<typename... Ts> | |
void | addProperties (Ts &... properties) |
virtual void | insertProperty (size_t index, Property *property, bool owner=true) |
insert property property at position index If index is not valid, the property is appended. | |
virtual void | insertProperty (size_t index, Property &property) |
insert property property at position index If index is not valid, the property is appended. | |
virtual Property * | insertProperty (size_t index, std::unique_ptr< Property > property) |
insert property property at position index If index is not valid, the property is appended. | |
virtual Property * | removeProperty (std::string_view identifier) |
virtual Property * | removeProperty (Property *property) |
virtual Property * | removeProperty (Property &property) |
virtual Property * | removeProperty (size_t index) |
remove property referred to by index | |
virtual bool | move (Property *property, size_t newIndex) |
virtual void | clear () |
Remove all properties; Owned properties will be deleted. | |
const std::vector< Property * > & | getProperties () const |
const std::vector< CompositeProperty * > & | getCompositeProperties () const |
std::vector< Property * > | getPropertiesRecursive () const |
std::vector< Property * > & | getPropertiesRecursive (std::vector< Property * > &destination) const |
Property * | getPropertyByIdentifier (std::string_view identifier, bool recursiveSearch=false) const |
Property * | getPropertyByPath (std::string_view path) const |
template<class T > | |
std::vector< T * > | getPropertiesByType (bool recursiveSearch=false) const |
bool | empty () const |
size_t | size () const |
Property * | operator[] (size_t) |
const Property * | operator[] (size_t) const |
const_iterator | find (Property *property) const |
iterator | begin () |
iterator | end () |
const_iterator | begin () const |
const_iterator | end () const |
const_iterator | cbegin () const |
const_iterator | cend () const |
virtual bool | isValid () const |
InvalidationLevel | getInvalidationLevel () const |
virtual void | setAllPropertiesCurrentStateAsDefault () |
virtual void | resetAllProperties () |
Public Member Functions inherited from inviwo::PropertyOwnerObservable | |
void | notifyObserversWillAddProperty (PropertyOwner *owner, Property *property, size_t index) |
void | notifyObserversDidAddProperty (Property *property, size_t index) |
void | notifyObserversWillRemoveProperty (Property *property, size_t index) |
void | notifyObserversDidRemoveProperty (PropertyOwner *owner, Property *property, size_t index) |
Public Member Functions inherited from inviwo::Observable< PropertyOwnerObserver > | |
Observable (const Observable< PropertyOwnerObserver > &other) | |
Observable (Observable< PropertyOwnerObserver > &&other) noexcept | |
Observable< PropertyOwnerObserver > & | operator= (const Observable< PropertyOwnerObserver > &other) |
Observable< PropertyOwnerObserver > & | operator= (Observable< PropertyOwnerObserver > &&other) noexcept |
void | addObserver (PropertyOwnerObserver *observer) |
void | removeObserver (PropertyOwnerObserver *observer) |
virtual void | startBlockingNotifications () override final |
virtual void | stopBlockingNotifications () override final |
Public Member Functions inherited from inviwo::ObservableInterface | |
Public Member Functions inherited from inviwo::Serializable | |
Public Member Functions inherited from inviwo::EventListener | |
Public Member Functions inherited from inviwo::MetaDataOwner | |
MetaDataOwner (const MetaDataOwner &rhs)=default | |
MetaDataOwner (MetaDataOwner &rhs)=default | |
MetaDataOwner & | operator= (const MetaDataOwner &rhs)=default |
MetaDataOwner & | operator= (MetaDataOwner &)=default |
void | copyMetaDataFrom (const MetaDataOwner &src) |
void | copyMetaDataTo (MetaDataOwner &dst) |
template<typename T > requires std::derived_from<T, MetaData> | |
T * | createMetaData (std::string_view key) |
template<typename T , typename U > requires std::derived_from<T, MetaData> && Settable<T, U> | |
void | setMetaData (std::string_view key, U value) |
template<typename T > requires std::derived_from<T, MetaData> | |
bool | unsetMetaData (std::string_view key) |
unset, i.e. remove the metadata entry matching the given key and type | |
template<typename T , typename U > requires std::derived_from<T, MetaData> && Gettable<T, U> | |
U | getMetaData (std::string_view key, U val) const |
template<typename T > requires std::derived_from<T, MetaData> | |
T * | getMetaData (std::string_view key) |
template<typename T > requires std::derived_from<T, MetaData> | |
const T * | getMetaData (std::string_view key) const |
MetaDataMap * | getMetaDataMap () |
const MetaDataMap * | getMetaDataMap () const |
bool | hasMetaData (std::string_view key) const |
template<typename T > requires std::derived_from<T, MetaData> | |
bool | hasMetaData (std::string_view key) const |
void | serialize (Serializer &s) const |
void | deserialize (Deserializer &d) |
Public Member Functions inherited from inviwo::Observable< ProcessorObserver > | |
Observable (const Observable< ProcessorObserver > &other) | |
Observable (Observable< ProcessorObserver > &&other) noexcept | |
Observable< ProcessorObserver > & | operator= (const Observable< ProcessorObserver > &other) |
Observable< ProcessorObserver > & | operator= (Observable< ProcessorObserver > &&other) noexcept |
void | addObserver (ProcessorObserver *observer) |
void | removeObserver (ProcessorObserver *observer) |
virtual void | startBlockingNotifications () override final |
virtual void | stopBlockingNotifications () override final |
Public Member Functions inherited from inviwo::EventPropagator |
Public Attributes | |
RasterizationOutport | outport_ |
Additional Inherited Members | |
Public Types inherited from inviwo::Processor | |
using | NameDispatcher = Dispatcher<void(std::string_view, std::string_view)> |
using | NameDispatcherHandle = typename NameDispatcher::Handle |
Public Types inherited from inviwo::PropertyOwner | |
using | iterator = std::vector<Property*>::iterator |
using | const_iterator = std::vector<Property*>::const_iterator |
Protected Member Functions inherited from inviwo::Processor | |
void | addPortToGroup (Port *port, std::string_view portGroup) |
void | removePortFromGroups (Port *port) |
void | setInportsChanged (bool changed) |
Protected Member Functions inherited from inviwo::PropertyOwner | |
PropertyOwner (const PropertyOwner &rhs) | |
PropertyOwner & | operator= (const PropertyOwner &that)=delete |
void | forEachProperty (std::function< void(Property &)> callback, bool recursiveSearch=false) const |
Protected Member Functions inherited from inviwo::Observable< PropertyOwnerObserver > | |
void | forEachObserver (C callback) |
Protected Member Functions inherited from inviwo::ObservableInterface | |
void | addObservationHelper (Observer *observer) |
void | removeObservationHelper (Observer *observer) |
Protected Member Functions inherited from inviwo::ProcessorObservable | |
void | notifyObserversAboutPropertyChange (Property *p) |
void | notifyObserversInvalidationBegin (Processor *p) |
void | notifyObserversInvalidationEnd (Processor *p) |
void | notifyObserversProcessorPortAdded (Processor *p, Port *port) |
void | notifyObserversProcessorPortRemoved (Processor *p, Port *port) |
void | notifyObserversAboutToProcess (Processor *p) |
void | notifyObserversFinishedProcess (Processor *p) |
void | notifyObserversSourceChange (Processor *p) |
void | notifyObserversSinkChange (Processor *p) |
void | notifyObserversReadyChange (Processor *p) |
void | notifyObserversActiveConnectionsChange (Processor *p) |
void | notifyObserversStartBackgroundWork (Processor *p, size_t jobs=1) |
void | notifyObserversFinishBackgroundWork (Processor *p, size_t jobs=1) |
Protected Member Functions inherited from inviwo::Observable< ProcessorObserver > | |
void | forEachObserver (C callback) |
Static Protected Member Functions inherited from inviwo::Processor | |
static std::function< ProcessorStatus()> | getDefaultIsReadyUpdater (Processor *) |
Protected Attributes inherited from inviwo::Processor | |
std::unique_ptr< ProcessorWidget > | processorWidget_ |
StateCoordinator< ProcessorStatus > | isReady_ |
StateCoordinator< bool > | isSink_ |
StateCoordinator< bool > | isSource_ |
Protected Attributes inherited from inviwo::PropertyOwner | |
std::vector< Property * > | properties_ |
std::vector< EventProperty * > | eventProperties_ |
std::vector< CompositeProperty * > | compositeProperties_ |
std::vector< std::unique_ptr< Property > > | ownedProperties_ |
Protected Attributes inherited from inviwo::MetaDataOwner | |
MetaDataMap | metaData_ |
Protected Attributes inherited from inviwo::ProcessorObservable | |
friend | ProcessorNetworkEvaluator |
friend | Property |
|
inlinevirtual |
Return the world space bounding box of the rendered geometry.
Reimplemented in inviwo::LineRasterizer, inviwo::MeshRasterizer, inviwo::SphereRasterizer, inviwo::TransformRasterization, and inviwo::VolumeRasterizer.
|
inlinevirtual |
Query raycasting state used for volume rendering.
Reimplemented in inviwo::VolumeRasterizer.
|
overridevirtual |
InitializeResources is called whenever a property with InvalidationLevel::InvalidResources is changes.
Reimplemented from inviwo::Processor.
Reimplemented in inviwo::LineRasterizer, inviwo::MeshRasterizer, inviwo::SphereRasterizer, and inviwo::VolumeRasterizer.
|
overridevirtual |
Deriving classes should override this function to do the main work of the processor. This function is called by the ProcessorNetworkEvaluator when the network is evaluated and the processor is invalid, i.e. some of its inports or properties has been modified, and is ready i.e. all non optional inports have valid data.
Reimplemented from inviwo::Processor.
Reimplemented from inviwo::Processor.
|
pure virtual |
Render the fragments, with all setup and evaluation taken care of. If opaque is set, a standard render call instead.
imageSize | Size in pixels. |
worldMatrixTransform | Additional transform to be applied before rendering. |
setUniforms | Binds the fragment list buffer and sets required uniforms. |
Implemented in inviwo::LineRasterizer, inviwo::MeshRasterizer, inviwo::SphereRasterizer, inviwo::TransformRasterization, and inviwo::VolumeRasterizer.
|
overridevirtual |
Override to maintain isModified() state of properties and isChanged() for inports as these might be accessed later during rasterization in a subsequent rasterization renderer. Note: need to set this processor to valid after rasterization using setValidDelayed.
Reimplemented from inviwo::Processor.
void inviwo::Rasterizer::setValidDelayed | ( | ) |
Set this processor's state to valid. To be used after the rasterization.
|
pure virtual |
Query whether fragments will be emitted.
Implemented in inviwo::LineRasterizer, inviwo::MeshRasterizer, inviwo::SphereRasterizer, inviwo::TransformRasterization, and inviwo::VolumeRasterizer.