72 void setValue(
int value,
int sendId = 0,
bool useUncrossed =
false);
73 void setValue(
ARNREAL value,
int sendId = 0,
bool useUncrossed =
false);
74 void setValue(
const QString& value,
int sendId = 0,
bool useUncrossed =
false,
75 const ArnLinkHandle& handleData = ArnLinkHandle::null());
76 void setValue(
const QByteArray& value,
int sendId = 0,
bool useUncrossed =
false,
77 const ArnLinkHandle& handleData = ArnLinkHandle::null());
78 void setValue(
const QVariant& value,
int sendId = 0,
bool useUncrossed =
false,
79 const ArnLinkHandle& handleData = ArnLinkHandle::null());
80 void setIgnoredValue(
const ArnLinkHandle& handleData = ArnLinkHandle::null());
82 void setBits(
int mask,
int value,
int sendId = 0,
bool useUncrossed =
false);
83 void addValue(
int value,
int sendId = 0,
bool useUncrossed =
false);
84 void addValue(
ARNREAL value,
int sendId = 0,
bool useUncrossed =
false);
86 int toInt(
bool* isOk = arnNullptr);
87 ARNREAL toReal(
bool* isOk = arnNullptr);
88 QString toString(
bool* isOk = arnNullptr);
89 QByteArray toByteArray(
bool* isOk = arnNullptr);
90 QVariant toVariant(
bool* isOk = arnNullptr);
104 void setPipeMode(
bool isPipeMode,
bool alsoSetTwin =
true);
106 void setSaveMode(
bool isSaveMode);
108 void setAtomicOpProvider(
bool isProvider);
109 bool isAtomicOpProvider()
const;
110 bool isProvider()
const;
111 bool isThreaded()
const;
115 ArnLink* valueLink();
116 ArnLink* providerLink();
117 ArnLink* holderLink(
bool useUncrossed);
123 quint32 localUpdateCount();
125 QString objectName()
const;
126 ArnLink* parent()
const;
129 QMutex* getMutex()
const;
134 ArnLink( ArnLink* parent,
const QString& name,
Arn::LinkFlags flags);
136 void setParent( ArnLink* parent);
137 void doModeChanged();
138 ArnLink* findLink(
const QString& name);
140 void setRefCount(
int count);
142 bool isLastZeroRef();
143 void setRetired( RetireType retireType);
144 void doRetired( ArnLink* startLink,
bool isGlobal);
148 static QObject* arnM( QObject* inArnM = arnNullptr);
154 void needInt(
bool* isOk = arnNullptr);
155 void needReal(
bool* isOk = arnNullptr);
156 void doValueChanged(
int sendId,
const QByteArray* valueData = arnNullptr,
157 const ArnLinkHandle& handleData = ArnLinkHandle::null());
159 void sendEventsDirRoot(
ArnEvent* ev, ArnLink* startLink);
163 static QAtomicInt _idCount;
173 volatile qint32 _refCount;
175 volatile quint8 _syncMode;
177 volatile quint8 _type;
178 volatile quint8 _zeroRefCount;
180 bool _hasBeenSetup : 1;
182 bool _isProvider : 1;
183 bool _isAtomicOpProvider : 1;
185 volatile bool _isPipeMode : 1;
186 volatile bool _isSaveMode : 1;
188 volatile bool _isRetired : 1;
189 volatile uint _retireType : 2;
191 volatile bool _haveInt : 1;
192 volatile bool _haveReal : 1;
193 volatile bool _haveString : 1;
194 volatile bool _haveByteArray : 1;
195 volatile bool _haveVariant : 1;
199 #endif // ARNLINK_HPP Data type of an Arn Data Object
Path: "/@/test" ==> "//test", Item: "@" ==> "".
QList< ArnCoreItem * > ArnCoreItemList
Core base class for the inherited ArnItem classes.
Link flags when accessing an Arn Data Object
QList< ArnLink * > ArnLinkList
#define MQ_DECLARE_ENUM(EStruct)
Enums.