roviz  0.7
Code Documentation of roviz
item_input.h
1 #ifndef ITEM_INPUT_H
2 #define ITEM_INPUT_H
3 
4 #include "item/abstract_item_input_output_base.h"
5 #include "appcore.h"
6 
7 #include <QObject>
8 #include <QRectF>
9 #include <QScopedPointer>
10 
11 class AbstractItem;
12 class ItemOutput;
13 class ItemInputPrivate;
14 
28 class ITEMFRAMEWORK_EXPORT ItemInput : public AbstractItemInputOutputBase
29 {
30  Q_OBJECT
31 
32  friend ItemOutput;
33 
34 public:
42  ItemInput(AbstractItem* owner, int transportType, QString const& description,
43  QRectF const& shape = {0, 0, 0, 0});
44 
45  virtual ~ItemInput();
46 
53  virtual bool isConnected() const;
54 
62  ItemOutput* output() const;
63 
67  QObject* data() const;
68 
69  virtual QPointF scenePosition() const;
70 
77  void disconnectOutput();
78 
89  bool connectOutput(ItemOutput* output);
90 
91 signals:
98  void outputDisconnected();
99 
106  void outputConnected();
107 
112  void dataChanged();
113 
114 private:
115  QScopedPointer<ItemInputPrivate> const d_ptr;
116  Q_DECLARE_PRIVATE(ItemInput)
117 };
118 
119 #endif // ITEM_INPUT_H
The ItemOutput class represents an output that belongs to an item.
Definition: item_output.h:28
The ItemInput class represents an input that belongs to an item.
Definition: item_input.h:28
Definition: item_input_p.h:9
virtual bool isConnected() const =0
This is a virtual pure function. It is used to determine whether or not this input or output is curre...
The AbstractItemInputOutputBase class provides common functionality for the ItemInput and ItemOutput ...
Definition: abstract_item_input_output_base.h:12
The AbstractItem class is the base class for all items.
Definition: abstract_item.h:69
virtual QObject * data() const =0
Returns the data provided by this object.
virtual QPointF scenePosition() const
Returns the scene position of this object.
Definition: abstract_item_input_output_base.cpp:52