C++ TargetRTS
Loading...
Searching...
No Matches
RTActorId.h
1/*
2 * Licensed Materials - Property of HCL and/or IBM
3 * Copyright HCL Technologies Ltd. 2016, 2021. All Rights Reserved.
4 * Copyright IBM Corporation 1999, 2016. All Rights Reserved.
5 *
6 * U.S. Government Users Restricted Rights - Use, duplication or
7 * disclosure restricted by GSA ADP Schedule.
8 */
9
10#ifndef __RTActorId_h__
11#define __RTActorId_h__ included
12
13#ifdef PRAGMA
14#pragma interface
15#endif
16
17#ifndef __RTDataObject_h__
18#include <RTDataObject.h>
19#endif
20
21class RTActor;
22class RTActorRef;
23
26class RTActorId : public RTDataObject
27{
28private:
29 RTActor * a;
30
31public:
33 RTActorId( const RTActor * = nullptr ); //lint !e1931
34
36 RTActorId( const RTActorId & );
37
38 virtual ~RTActorId( void );
39
40 operator RTActor *( void ) const;
41 RTActorId & operator=( const RTActor * );
42 RTActorId & operator=( const RTActorId & );
43 RTActor * operator->( void ) const;
44
45 virtual int operator==( const RTDataObject & ) const override;
46 int operator==( const RTActorRef & ) const;
47 int operator==( const RTActorId & ) const;
48
49 RTS_INLINE int operator!=( const RTDataObject & ) const;
50 RTS_INLINE int operator!=( const RTActorRef & ) const;
51 RTS_INLINE int operator!=( const RTActorId & ) const;
52
60 int isValid( void ) const;
61
65 RTActor * getRTActor( void ) const;
66
70 void resetActor( void );
71
75 virtual const RTObject_class * getClassData( void ) const override;
76
79
80#define RTType_RTActorId ( RTActorId::classData )
81};
82
84{
85 const void * data;
86 const RTObject_class * type;
87
88 RTS_INLINE RTTypedValue_RTActorId( const RTActorId & ); //lint !e1931
89 RTS_INLINE RTTypedValue_RTActorId( const RTActorId &,
90 const RTObject_class * );
91}; //lint !e1712
92
93#if RTS_INLINES
94#include <RTActorId.inl>
95#endif
96
97#endif // __RTActorId_h__
An instance of this class represents a capsule instance.
Definition: RTActor.h:44
An object that identifies a capsule instance at run-time.
Definition: RTActorId.h:27
int isValid(void) const
Determine if this object identifies a valid capsule instance.
RTActorId(const RTActor *=nullptr)
Construction from an RTActor pointer.
RTActorId(const RTActorId &)
Construction from an RTActor reference.
virtual const RTObject_class * getClassData(void) const override
Return the type descriptor for the RTActor object.
RTActor * getRTActor(void) const
Return the wrapped RTActor pointer.
static const RTObject_class classData
Type descriptor for the RTActor object.
Definition: RTActorId.h:78
void resetActor(void)
Reset the capsule instance identifier.
Represents a capsule part.
Definition: RTActorRef.h:39
Provides a common interface to certain data type implementations (e.g.
Definition: RTDataObject.h:33
A type descriptor providing information about a type.
Definition: RTObject_class.h:64
Definition: RTActorId.h:84