76class ARCCORE_MESSAGEPASSING_EXPORT
Request
101 m_request = null_request;
106 ARCCORE_DEPRECATED_2020(
"Use overload with IRequestCreator pointer")
114 ARCCORE_DEPRECATED_2020(
"Use overload with IRequestCreator pointer")
122 ARCCORE_DEPRECATED_2020(
"Use overload with IRequestCreator pointer")
130 ARCCORE_DEPRECATED_2020(
"Use overload with IRequestCreator pointer")
138 ARCCORE_DEPRECATED_2020(
"Use overload with IRequestCreator pointer")
186 operator const T*()
const {
return (
const T*)m_request.cv; }
188 operator T*()
const {
return (T*)m_request.v; }
189 operator int()
const {
return m_request.i; }
190 operator long()
const {
return m_request.l; }
191 operator size_t()
const {
return m_request.st; }
195 int returnValue()
const {
return m_return_value; }
203 if (m_type!=null_request_type)
206 return m_request.i!=null_request.i;
208 return m_request.l!=null_request.l;
210 return m_request.st!=null_request.st;
212 return m_request.cv!=null_request.cv;
215 void* requestAsVoidPtr()
const {
return m_request.v; }
217 static void setNullRequest(
Request r)
219 null_request =
r.m_request;
220 null_request_type =
r.m_type;
225 m_request = null_request;
226 m_sub_request.
reset();
230 bool hasSubRequest()
const {
return !m_sub_request.
isNull(); }
236 void print(std::ostream&
o)
const;
245 Int32 _type()
const {
return m_type; }
249 int m_return_value = 0;
252 Ref<ISubRequest> m_sub_request;
253 IRequestCreator* m_creator =
nullptr;
254 static _Request null_request;
255 static int null_request_type;