26#ifndef CAMITK_COMPONENT_H
27#define CAMITK_COMPONENT_H
44#include "CamiTKDisableWarnings"
45#include <vtkWindowLevelLookupTable.h>
47#include <vtkAxesActor.h>
48#include <vtkImageActor.h>
49#include "CamiTKReEnableWarnings"
51#include <vtkImageData.h>
52#include <vtkPointSet.h>
53#include <vtkSmartPointer.h>
54#include <vtkAlgorithmOutput.h>
55#include <vtkActor2D.h>
56#include <vtkTransform.h>
62class vtkUnstructuredGridAlgorithm;
63class vtkDataSetToUnstructuredGridFilter;
64class vtkWindowLevelLookupTable;
77#define invoke0(HANDLER,METHOD) \
81#define invoke1(HANDLER,METHOD,PARAM) \
83 HANDLER->METHOD(PARAM);
85#define invoke2(HANDLER,METHOD,PARAM1,PARAM2) \
87 HANDLER->METHOD(PARAM1,PARAM2);
89#define invoke3(HANDLER,METHOD,PARAM1,PARAM2,PARAM3) \
91 HANDLER->METHOD(PARAM1,PARAM2,PARAM3);
93#define invoke4(HANDLER,METHOD,PARAM1,PARAM2,PARAM3,PARAM4) \
95 HANDLER->METHOD(PARAM1,PARAM2,PARAM3,PARAM4);
101#define invokeGet0(HANDLER,METHOD) \
103 return HANDLER->METHOD();
105#define invokeGet1(HANDLER,METHOD,PARAM) \
107 return HANDLER->METHOD(PARAM);
109#define invokeGet2(HANDLER,METHOD,PARAM1,PARAM2) \
111 return HANDLER->METHOD(PARAM1,PARAM2);
113#define invokeGet3(HANDLER,METHOD,PARAM1,PARAM2,PARAM3) \
115 return HANDLER->METHOD(PARAM1,PARAM2,PARAM3);
117#define invokeGet4(HANDLER,METHOD,PARAM1,PARAM2,PARAM3,PARAM4) \
119 return HANDLER->METHOD(PARAM1,PARAM2,PARAM3,PARAM4);
124#define invokeChildren0(METHOD) \
125for(Component *child: childrenComponent) { \
129#define invokeChildren1(METHOD,PARAM) \
130for(Component *child: childrenComponent) { \
131 child->METHOD(PARAM); \
134#define invokeChildren2(METHOD,PARAM1,PARAM2) \
135for(Component *child: childrenComponent) { \
136 child->METHOD(PARAM1,PARAM2); \
139#define invokeChildren3(METHOD,PARAM1,PARAM2,PARAM3) \
140for(Component *child: childrenComponent) { \
141 child->METHOD(PARAM1,PARAM2,PARAM3); \
144#define invokeChildren4(METHOD,PARAM1,PARAM2,PARAM3,PARAM4) \
145for(Component *child: childrenComponent) { \
146 child->METHOD(PARAM1,PARAM2,PARAM3,PARAM4); \
154#define delegate0(HANDLER,METHOD) \
155virtual void METHOD() override { \
156 invoke0(HANDLER,METHOD) \
159#define delegate1(HANDLER,METHOD,PARAM_TYPE) \
160virtual void METHOD(PARAM_TYPE param) override { \
161 invoke1(HANDLER,METHOD,param) \
164#define delegate2(HANDLER,METHOD,PARAM_TYPE1,PARAM_TYPE2) \
165virtual void METHOD(PARAM_TYPE1 param1, PARAM_TYPE2 param2) override { \
166 invoke2(HANDLER,METHOD,param1,param2) \
169#define delegate3(HANDLER,METHOD,PARAM_TYPE1,PARAM_TYPE2,PARAM_TYPE3) \
170virtual void METHOD(PARAM_TYPE1 param1, PARAM_TYPE2 param2, PARAM_TYPE3 param3) override { \
171 invoke3(HANDLER,METHOD,param1,param2,param3) \
174#define delegate4(HANDLER,METHOD,PARAM_TYPE1,PARAM_TYPE2,PARAM_TYPE3, PARAM_TYPE4) \
175virtual void METHOD(PARAM_TYPE1 param1, PARAM_TYPE2 param2, PARAM_TYPE3 param3, PARAM_TYPE4 param4) override { \
176 invoke4(HANDLER,METHOD,param1,param2,param3,param4) \
185#define delegateGet0(HANDLER,METHOD,TYPE) \
186virtual TYPE METHOD() override { \
187 invokeGet0(HANDLER,METHOD) \
192#define delegateGet1(HANDLER,METHOD,TYPE,PARAM_TYPE) \
193virtual TYPE METHOD(PARAM_TYPE param) override { \
194 invokeGet1(HANDLER,METHOD,param) \
199#define delegateGet2(HANDLER,METHOD,TYPE,PARAM1_TYPE,PARAM2_TYPE) \
200virtual TYPE METHOD(PARAM1_TYPE param1, PARAM2_TYPE param2) override { \
201 invokeGet2(HANDLER,METHOD,param1,param2) \
208#define delegateConstGet0(HANDLER,METHOD,TYPE) \
209virtual TYPE METHOD() const override { \
210 invokeGet0(HANDLER,METHOD) \
215#define delegateConstGet1(HANDLER,METHOD,TYPE,PARAM_TYPE) \
216virtual TYPE METHOD(PARAM_TYPE param) const override { \
217 invokeGet1(HANDLER,METHOD,param) \
226#define delegateAndInvokeChildren1(HANDLER,METHOD,PARAM_TYPE) \
227virtual void METHOD(PARAM_TYPE param) override { \
228 invoke1(HANDLER,METHOD,param) \
229 invokeChildren1(METHOD,param) \
232#define delegateAndInvokeChildren2(HANDLER,METHOD,PARAM_TYPE1,PARAM_TYPE2) \
233virtual void METHOD(PARAM_TYPE1 param1, PARAM_TYPE2 param2) override { \
234 invoke2(HANDLER,METHOD,param1,param2) \
235 invokeChildren2(METHOD,param1,param2) \
238#define delegateAndInvokeChildren1Array(HANDLER,METHOD,PARAM_TYPE1,PARAM_TYPE2,DIM) \
239virtual void METHOD(PARAM_TYPE1 param1, PARAM_TYPE2 param2[DIM]) override { \
240 invoke2(HANDLER,METHOD,param1,param2) \
241 invokeChildren2(METHOD,param1,param2) \
244#define delegateAndInvokeChildren3(HANDLER,METHOD,PARAM_TYPE1,PARAM_TYPE2,PARAM_TYPE3) \
245virtual void METHOD(PARAM_TYPE1 param1, PARAM_TYPE2 param2, PARAM_TYPE3 param3) override { \
246 invoke3(HANDLER,METHOD,param1,param2,param3) \
247 invokeChildren3(METHOD,param1,param2,param3) \
250#define delegateAndInvokeChildren4(HANDLER,METHOD,PARAM_TYPE1,PARAM_TYPE2,PARAM_TYPE3,PARAM_TYPE4) \
251virtual void METHOD(PARAM_TYPE1 param1, PARAM_TYPE2 param2, PARAM_TYPE3 param3,PARAM_TYPE4 param4) override { \
252 invoke4(HANDLER,METHOD,param1,param2,param3,param4) \
253 invokeChildren4(METHOD,param1,param2,param3,param4) \
262class FrameOfReference;
331 Component(QString file, QString name, Representation rep = NO_REPRESENTATION,
bool createDefaultFrame =
true);
343 Component(
Component* parentComponent,
const QString& name, Representation rep = NO_REPRESENTATION,
bool createDefaultFrame =
true);
357 Representation getRepresentation()
const;
360 bool isTopLevel()
const;
369 virtual void setModified(
bool modified =
true);
372 virtual bool getModified()
const;
375 virtual void setVisibility(QString,
bool);
378 virtual bool getVisibility(QString)
const;
382 virtual void refresh();
385 virtual bool isSelected()
const;
391 virtual void setSelected(
const bool b,
const bool recursive =
true);
394 const QString getFileName()
const;
397 void setFileName(
const QString&);
400 bool event(QEvent* e)
override;
403 QMenu* getActionMenu();
413 virtual QVariant toVariant()
const override;
416 virtual void fromVariant(
const QVariant&)
override;
419 virtual QUuid getUuid()
const override;
427 virtual bool setUuid(QUuid)
override;
437 QStringList getHierarchy()
const override;
440 bool isInstanceOf(QString className)
const override;
482 void propertyValueChanged(QString name)
override;
522 bool addProperty(
Property*)
override;
527 virtual QVariant getPropertyValue(
const QString& name)
const override;
532 virtual bool setPropertyValue(
const QString& name, QVariant newValue)
override;
552 bool doubleClicked()
override;
557 void deleteChildren() override final;
558 QString getName() const override;
559 void setName(const QString&) override;
562 QPixmap getIcon() override;
563 void setNodeModified(
bool) override final;
564 bool getNodeModified() const override;
569 bool inItalic() const override;
601 vtkSmartPointer<vtkProp>
getProp(const QString& param)
override {
606 return mySlice->getProp(param);
617 return mySlice->getNumberOfProp();
623 vtkSmartPointer<vtkProp>
getProp(
unsigned int index)
override {
628 return mySlice->getProp(index);
634 bool addProp(
const QString& name, vtkSmartPointer<vtkProp> prop)
override {
639 return mySlice->addProp(name, prop);
651 return mySlice->removeProp(name);
676 void getBounds(
double* bounds)
override;
681 double getBoundingRadius()
override;
698 return EnhancedModes();
725 virtual
void setLinesAsTubes(
bool isTubes = true,
bool radiusFromLength = true,
double radiusFactor = 1.0 / 40.0,
int numberOfSides = 5)
override {
727 myGeometry->setLinesAsTubes(isTubes, radiusFromLength, radiusFactor, numberOfSides);
731 delegate1(myGeometry, setMeshWorldTransform, vtkSmartPointer<vtkTransform>)
802 virtual QMultiMap<const FrameOfReference*, Component*> getAllFrames(
bool includeChildrenFrames =
true)
override;
807 virtual QMultiMap<const Transformation*, Component*> getAllTransformations(
bool includeChildrenTransformations =
true)
override;
815 virtual void resetFrame()
override;
818 vtkSmartPointer<vtkAxesActor> getFrameAxisActor(QString viewerName)
override;
821 virtual bool getFrameVisibility(QString viewerName)
const override;
824 virtual void setFrameVisibility(QString viewerName,
bool visibility)
override;
863 void init(
const QString& name,
bool createDefaultFrame);
872 virtual void initRepresentation() = 0;
875 QMap<QString, bool> myViewers;
881 QMenu* visibilityMenu;
884 QMap<QString, Property*> propertyMap;
887 bool interfaceNodeModifiedFlag;
890 QHash<QString, vtkSmartPointer<vtkAxesActor>> frameActors;
893 QHash<QString, bool> frameVisibilities;
927 return QPixmap(0, 0);
947 interfaceNodeModifiedFlag = nodeModified;
952 return interfaceNodeModifiedFlag;
#define CAMITK_API
Definition CamiTKAPI.h:66
A Component represents something that could be included in the explorer view, the interactive 3D view...
Definition sdk/libraries/core/component/Component.h:304
void setIndexOfPropertyExplorerTab(unsigned int index) override final
Set the index of the tab in the ProperlyExplorer to select for display.
Definition sdk/libraries/core/component/Component.h:491
delegateGet0(myGeometry, getPointSet, vtkSmartPointer< vtkPointSet >) delegate1(myGeometry
virtual void setLinesAsTubes(bool isTubes=true, bool radiusFromLength=true, double radiusFactor=1.0/40.0, int numberOfSides=5) override
Set the lines as tubes (works only for vtkDataSet representation that contains lines).
Definition sdk/libraries/core/component/Component.h:725
const const const const double const RenderingModes double const double size
Definition sdk/libraries/core/component/Component.h:723
virtual QVariant getPropertyValue(const QString &name) const override
get the property QVariant (same as property(const char*)) but check if it exists first.
Definition sdk/libraries/core/component/Component.cpp:540
Representation
The different representation that can be implemented to represent this Component in the InteractiveVi...
Definition sdk/libraries/core/component/Component.h:313
@ GEOMETRY
this Component can be displayed as a GEOMETRY
Definition sdk/libraries/core/component/Component.h:314
@ NO_REPRESENTATION
this Component has no representation implemented
Definition sdk/libraries/core/component/Component.h:316
@ SLICE
this Component can be displayed as a SLICE
Definition sdk/libraries/core/component/Component.h:315
const RenderingModes
Definition sdk/libraries/core/component/Component.h:704
const const const const double delegateAndInvokeChildren2(myGeometry, setActorOpacity, const RenderingModes, const double) delegateConstGet1(myGeometry
unsigned int indexOfPropertyExplorerTab
The PropertyExplorer tab index to select once refreshed.
Definition sdk/libraries/core/component/Component.h:851
unsigned int getNumberOfProp() const override
return the number of additional prop
Definition sdk/libraries/core/component/Component.h:612
unsigned int getIndexOfPropertyExplorerTab() override
Get the index of the tab in the ProperlyExplorer to select for display.
Definition sdk/libraries/core/component/Component.h:502
const const const const double const RenderingModes setMapperScalarRange
Definition sdk/libraries/core/component/Component.h:719
getImageData
Definition sdk/libraries/core/component/Component.h:740
InterfaceNode * getParent() override
get the parent Component
Definition sdk/libraries/core/component/Component.h:921
setPointSet
Definition sdk/libraries/core/component/Component.h:585
int getSlice() const override
see Component.cpp
Definition sdk/libraries/core/component/Component.cpp:776
delegate4(myGeometry, setPointPosition, const unsigned int, const double, const double, const double) delegateAndInvokeChildren1(myGeometry
vtkSmartPointer< vtkPointSet > getDataPort
Definition sdk/libraries/core/component/Component.h:589
virtual void setFrame(const std::shared_ptr< FrameOfReference > &frame) override
Set the FrameOfReference of this object.
Definition sdk/libraries/core/component/Component.h:788
const const const const double void getActorColor(const RenderingModes, double[4], bool ignoreEnhancedModes=false) const override
see Component.cpp
Definition sdk/libraries/core/component/Component.cpp:673
QObject * getPropertyObject() override
Get the property object that could be understood by PropertyEditor.
Definition sdk/libraries/core/component/Component.h:466
setColor
Definition sdk/libraries/core/component/Component.h:711
virtual bool isSelected() const
Check if this data component is selected.
Definition sdk/libraries/core/component/Component.h:901
bool removeProp(const QString &name) override
remove a given additional prop.
Definition sdk/libraries/core/component/Component.h:646
vtkSmartPointer< vtkPointSet > delegate1(myGeometry, setPointData, vtkSmartPointer< vtkDataArray >) delegateConstGet0(myGeometry
InterfaceBitMap * mySlice
mySlice is the slice representation of this data component, the Component delegates all InterfaceBitM...
Definition sdk/libraries/core/component/Component.h:833
bool inItalic() const override
A component name is not displayed in italic by default.
Definition sdk/libraries/core/component/Component.h:931
virtual void setModified(bool modified=true)
set the modified flag
Definition sdk/libraries/core/component/Component.h:936
const QObject * getPropertyObject() const override
Definition sdk/libraries/core/component/Component.h:469
ComponentList childrenComponent
The explorer sub items.
Definition sdk/libraries/core/component/Component.h:839
delegateAndInvokeChildren1(myGeometry, setEnhancedModes, const EnhancedModes) virtual const EnhancedModes getEnhancedModes() const override
Definition sdk/libraries/core/component/Component.h:690
QString getName() const override
get the name to be displayed
Definition sdk/libraries/core/component/Component.h:916
QMenu * getPopupMenu(QWidget *parent=nullptr) override
get the popup menu to display (always return nullptr, overwrite this method if you want to give here ...
Definition sdk/libraries/core/component/Component.h:572
const const const const double getActorOpacity
Definition sdk/libraries/core/component/Component.h:715
vtkSmartPointer< vtkPointSet > vtkSmartPointer< vtkAlgorithmOutput > const RenderingModes updateLabel
Definition sdk/libraries/core/component/Component.h:597
const RenderingModes const InterfaceGeometry::RenderingModes getRenderingModes() const override
see Component.cpp
Definition sdk/libraries/core/component/Component.cpp:649
virtual const FrameOfReference * getFrame() const override
Get the pointer to this object's FrameOfReference.
Definition sdk/libraries/core/component/Component.h:795
unsigned int getNumberOfPropertyWidget() override
get the number of alternative property widgets
Definition sdk/libraries/core/component/Component.h:446
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > double delegate0(mySlice, updatePickPlane) delegate1(mySlice
void pointPicked(vtkIdType, bool) override
an inherited class can redefine this method something specific.
Definition sdk/libraries/core/component/Component.h:662
vtkSmartPointer< vtkImageData > get2DImageActor
Definition sdk/libraries/core/component/Component.h:744
InterfaceGeometry * myGeometry
myGeometry is the 3d representation of this Component, the Component delegates all InterfaceGeometry ...
Definition sdk/libraries/core/component/Component.h:830
setRenderingModes
Definition sdk/libraries/core/component/Component.h:685
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > double int delegate3(mySlice, setSlice, double, double, double) delegateConstGet0(mySlice
bool addProp(const QString &name, vtkSmartPointer< vtkProp > prop) override
insert an additional prop, defining it by its name (default visibility = false).
Definition sdk/libraries/core/component/Component.h:634
void setNodeModified(bool) override final
Set up the node modification flag.
Definition sdk/libraries/core/component/Component.h:946
QPixmap getIcon() override
Get the pixmap that will be displayed for this node.
Definition sdk/libraries/core/component/Component.h:926
void cellPicked(vtkIdType, bool) override
an inherited class can redefine this method something specific.
Definition sdk/libraries/core/component/Component.h:667
delegateAndInvokeChildren3(myGeometry, setColor, const double, const double, const double) delegateAndInvokeChildren4(myGeometry
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > getPickPlaneActor
Definition sdk/libraries/core/component/Component.h:748
vtkSmartPointer< vtkPointSet > vtkSmartPointer< vtkAlgorithmOutput > getActor
Definition sdk/libraries/core/component/Component.h:593
vtkSmartPointer< vtkPointSet > vtkSmartPointer< vtkAlgorithmOutput > const RenderingModes const QString &vtkSmartPointer< vtkProp > getProp(const QString ¶m) override
Return the vtkProp (actors, volumes and annotations) corresponding to the given name.
Definition sdk/libraries/core/component/Component.h:601
setActorColor
Definition sdk/libraries/core/component/Component.h:704
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > double int int setArbitraryTransform
Definition sdk/libraries/core/component/Component.h:764
QWidget * getPropertyWidgetAt(unsigned int) override
Get the ith alternative property widget.
Definition sdk/libraries/core/component/Component.h:454
virtual bool getModified() const
set the modified flag
Definition sdk/libraries/core/component/Component.h:941
bool modifiedFlag
the modification flag (could be extended to manage a undo/redo list)
Definition sdk/libraries/core/component/Component.h:845
delegateAndInvokeChildren1Array(myGeometry, setActorColor, const RenderingModes, double, 4) delegateAndInvokeChildren4(myGeometry
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > delegateConstGet0(mySlice, get3DImageActor, vtkSmartPointer< vtkImageActor >) delegateConstGet0(mySlice
const ComponentList & getChildren() const override
get the list of the InterfaceNode children (sub items in the hierarchy)
Definition sdk/libraries/core/component/Component.h:911
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > double int int vtkSmartPointer< vtkTransform > int getNumberOfSlices() const override
see Component.cpp
Definition sdk/libraries/core/component/Component.cpp:766
bool getNodeModified() const override
Get the current modification flag.
Definition sdk/libraries/core/component/Component.h:951
bool doubleClicked() override
This method is called each time the InterfaceNode is double clicked by the user.
Definition sdk/libraries/core/component/Component.h:906
InterfaceNode * myParentNode
who is the boss? The Component!
Definition sdk/libraries/core/component/Component.h:836
virtual vtkSmartPointer< vtkActor > get3DCursor()
Return an Actor for a 3D cursor on the picked location This should be redefined into something specif...
Definition sdk/libraries/core/component/Component.h:671
vtkSmartPointer< vtkProp > getProp(unsigned int index) override
return an additional prop by its index
Definition sdk/libraries/core/component/Component.h:623
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > double int getNumberOfColors
Definition sdk/libraries/core/component/Component.h:760
Component(QString file, QString name, Representation rep=NO_REPRESENTATION, bool createDefaultFrame=true)
Component constructor for top-level component (please use the other constructor for sub-level compone...
Definition sdk/libraries/core/component/Component.cpp:56
QString myFileName
the file name from which the Component is loaded
Definition sdk/libraries/core/component/Component.h:848
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > pixelPicked
Definition sdk/libraries/core/component/Component.h:752
vtkSmartPointer< vtkImageData > vtkSmartPointer< vtkImageActor > vtkSmartPointer< vtkActor > double setSlice
Definition sdk/libraries/core/component/Component.h:756
std::shared_ptr< FrameOfReference > frameOfReference
The FrameOfReference in which this component's data is represented.
Definition sdk/libraries/core/component/Component.h:854
bool isSelectedFlag
tells if this particular Component is selected or not
Definition sdk/libraries/core/component/Component.h:842
FrameOfReference is only a label for an abstract coordinate system.
Definition FrameOfReference.h:69
This class describes what are the methods to implement for a BitMap.
Definition InterfaceBitMap.h:68
virtual void setOriginalVolume(vtkSmartPointer< vtkImageData >)=0
set the original volume image data (the source vtkImageData before any reslice) and refresh the vtk p...
virtual void updatePickPlane()=0
update the position of the plane surrounding the currently selected slice
virtual vtkSmartPointer< vtkActor > getPixelActor()=0
Return the vtkActor used to pick pixels in the slices.
virtual vtkSmartPointer< vtkImageActor > get3DImageActor() const =0
Return the vtkImageActor (vtkProp) representing a slice to be displayed in 3D viewers.
virtual void setPixelRealPosition(double, double, double)=0
move the pixel selection green indicator (pixelActor) to the given real position
This class describes the methods to implement in order to manage a Component position in space.
Definition InterfaceFrame.h:51
This class describes what are the methods to implement for a Geometry (rendering parameters,...
Definition InterfaceGeometry.h:61
virtual vtkSmartPointer< vtkPointSet > getPointSet()=0
virtual void setTexture(vtkSmartPointer< vtkTexture >)=0
Set a texture to this object.
virtual void setEnhancedModes(const EnhancedModes)=0
set the enhanced mode
virtual void setOpacity(const double)=0
Set the opacity of this object. WARNING color field (surfaceColor, ...) are not modified!
virtual void setActorOpacity(const RenderingModes, const double)=0
Set the opacity of this representation modes. WARNING color field (surfaceColor, ....
virtual void setColorMode(int vtkColorMode=VTK_COLOR_MODE_DEFAULT)=0
virtual void setGlyphType(const GlyphTypes type, const double size=0.0)=0
Set the glyph type (a glyph is a geometric representation attached to every point in the input datase...
virtual const EnhancedModes getEnhancedModes() const =0
get the current enhanced mode
virtual void setPointPosition(const unsigned int orderNumber, const double x, const double y, const double z)=0
set a given point position
virtual void setDataConnection(vtkSmartPointer< vtkAlgorithmOutput >)=0
Set/reset the connection for the InterfaceGeometry internal algorithm.
virtual void setPointData(vtkSmartPointer< vtkDataArray >)=0
set the point data (may contains a lookup table).
This class describe what are the methods to implement for a hierarchical tree node.
Definition InterfaceNode.h:58
Interface for all objects that should be serialized by the PersistenceManager.
Definition InterfacePersistence.h:38
This class describes what are the methods to implement in order to manage dynamic properties.
Definition InterfaceProperty.h:43
This class describes a property that can be used in components and actions or any class that needs to...
Definition Property.h:306
QList< Component * > ComponentList
A list of Component.
Definition CamiTKAPI.h:161
#define delegateConstGet1(HANDLER, METHOD, TYPE, PARAM_TYPE)
Definition sdk/libraries/core/component/Component.h:215
#define delegate2(HANDLER, METHOD, PARAM_TYPE1, PARAM_TYPE2)
Definition sdk/libraries/core/component/Component.h:164
#define delegate1(HANDLER, METHOD, PARAM_TYPE)
Definition sdk/libraries/core/component/Component.h:159
#define delegateAndInvokeChildren4(HANDLER, METHOD, PARAM_TYPE1, PARAM_TYPE2, PARAM_TYPE3, PARAM_TYPE4)
Definition sdk/libraries/core/component/Component.h:250
#define delegateGet1(HANDLER, METHOD, TYPE, PARAM_TYPE)
Definition sdk/libraries/core/component/Component.h:192