| Interface access: | publishedPartner | |
class CThreadInfo : public CStreamElementBase;
Description
Class that represents a thread on the target. It is based on CStreamElementBase, so it can be streamed between client and server. It is used by the Core Dump server, its clients and the plugins.
Derivation
CBase - No description.CStreamElementBase - Pure virtual base class for streamable classes. Used when a class must be passed...CThreadInfo - Class that represents a thread on the target. It is based on CStreamElementBase,...
Members
Defined in CThreadInfo More...
CThreadInfo()CThreadInfo(const TUint64 &,const TUint64 &,const TUint &,const TLinAddr &,const TLinAddr &,const TUint &,const TLinAddr &,const TUint &)First phase contructor. Sets the size to 0, name to NULL. ConstructL(const TDesC &)Second phase constructor initialises the name of the thread. ExternalizeL(RWriteStream &,CBufFlat *)Make a streamed representation of this object to RWriteStream aStream.HeapBase()constHeapSize()constId()constObtain the kernel thread id. InternalizeL(RReadStream &)Initialise this object with the contents of RReadStream aStream. The descriptor ...LastCpuId()constMaxSize()Get the maximum size allowed for this object. This is needed as the object is pa...Name()constObtain the kernel thread name. NameL(const TDesC &)Set the name of the thread by deleting, allocating and then copying the paramete...NewL(const TDesC8 &)Allocates and constructs a CThreadInfo object from a descriptor. The descriptor ...NewL(const TUint64 &,const TDesC &,const TUint64 &,const TUint &,const TLinAddr &,const TLinAddr &,const TUint &,const TLinAddr &,const TUint &)Allocates and constructs a CThreadInfo object. Observed()constReturns ETrue if the thread is being explicitly observed for crashes by the Core...Observed(TBool)Set whether this thread is being observed for crashes by the Core Dump Server. Priority()constObtain the kernel priority. ProcessId()constObtain the kernel owning process id. SetHeapBase(TUint32)SetHeapSize(TUint32)SetLastCpuId(TInt32)Size()constGets the size of the object when externalized. The sizeofs used to calculate thi...SvcStackAddr()constObtain the kernel supervisor mode stack base address. SvcStackPtr()constObtain the kernel supervisor mode stack pointer. SvcStackSize()constObtain the kernel supervisor mode stack size in bytes. UsrStackAddr()constObtain the kernel user mode stack base address. UsrStackSize()constObtain the kernel user mode stack size in bytes. iHeapBasethreads heap base iHeapSizethread heap size iIdSymbian kernel thread id iLastCpuIdlast cpu in use when crash occurred iNameSymbian kernel thread name iObservedSet to ETrue if the thread is being explicitly observed for crashes by the Core ...iPrioritySymbian kernel thread priority TThreadPriority iProcessIdSymbian kernel process id of owning process iSizeExternalized size iSpare1iSpare2iSvcStackAddrThread supervisor mode stack base address iSvcStackPtrThread supervisor stack pointer iSvcStackSizeThread supervisor mode stack size in bytes iUsrStackAddrThread user mode stack base address iUsrStackSizeThread user mode stack base size in bytes ~CThreadInfo()Destructor. Deletes name if allocated.
Inherited from CStreamElementBase:
Construction and destruction
NewL(const TUint64 &,const TDesC &,const TUint64 &,const TUint &,const TLinAddr &,const TLinAddr &,const TUint &,const TLinAddr &,const TUint &)
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C static CThreadInfo* NewL(const TUint64 &aId, const TDesC &aName, const TUint64 &aProcessId, const TUint &aPriority, const TLinAddr &aSvcStackPtr, const TLinAddr &aSvcStackAddr, const TUint &aSvcStackSize, const TLinAddr &aUsrStackAddr, const TUint &aUsrStackSize);
Description
Allocates and constructs a CThreadInfo object.
Parameters
const TUint64 &aId |
Kernel thread id |
const TDesC &aName |
Kernel thread name |
const TUint64 &aProcessId |
Kernel id of owning process |
const TUint &aPriority |
Kernel thread priority TThreadPriority |
const TLinAddr &aSvcStackPtr |
Thread supervisor stack pointer |
const TLinAddr &aSvcStackAddr |
Thread supervisor mode stack base address |
const TUint &aSvcStackSize |
Thread supervisor mode stack size in bytes |
const TLinAddr &aUsrStackAddr |
Thread user mode stack base address |
const TUint &aUsrStackSize |
Thread user mode stack base size in bytes |
|
Return value
See also:
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C static CThreadInfo* NewL(const TDesC8 &aStreamData);
Description
Allocates and constructs a CThreadInfo object from a descriptor. The descriptor contains an externalised version of a CThreadInfo object. This method is typically used to obtain a CThreadInfo object from a descriptor returned by the core dump server.
Parameters
const TDesC8 &aStreamData |
Descriptor with externalised/streamed object |
|
Return value
See also:
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C ~CThreadInfo();
Description
Destructor. Deletes name if allocated.
CThreadInfo(const TUint64 &,const TUint64 &,const TUint &,const TLinAddr &,const TLinAddr &,const TUint &,const TLinAddr &,const TUint &)
| Interface access: | internal to technology | Default as private. |
private: CThreadInfo(const TUint64 &aId, const TUint64 &aProcessId, const TUint &aPriority, const TLinAddr &aSvcStackPtr, const TLinAddr &aSvcStackAddr, const TUint &aSvcStackSize, const TLinAddr &aUsrStackAddr, const TUint &aUsrStackSize);
Description
First phase contructor. Sets the size to 0, name to NULL.
Parameters
const TUint64 &aId |
|
const TUint64 &aProcessId |
|
const TUint &aPriority |
|
const TLinAddr &aSvcStackPtr |
|
const TLinAddr &aSvcStackAddr |
|
const TUint &aSvcStackSize |
|
const TLinAddr &aUsrStackAddr |
|
const TUint &aUsrStackSize |
|
|
See also:
| Interface access: | internal to technology | Default as private. |
private: CThreadInfo();
Description
ConstructL(const TDesC &)
| Interface access: | internal to technology | Default as private. |
private: void ConstructL(const TDesC &aName);
Description
Second phase constructor initialises the name of the thread.
Parameters
const TDesC &aName |
Thread name |
|
See also:
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C const TUint64& Id() const;
Description
Obtain the kernel thread id.
Return value
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C void NameL(const TDesC &aName);
Description
Set the name of the thread by deleting, allocating and then copying the parameter.
Parameters
const TDesC &aName |
Name of the thread to set to |
|
See also:
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C const TDesC& Name() const;
Description
Obtain the kernel thread name.
Return value
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C const TUint64& ProcessId() const;
Description
Obtain the kernel owning process id.
Return value
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C TUint Priority() const;
Description
Obtain the kernel priority.
Return value
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C TUint SvcStackPtr() const;
Description
Obtain the kernel supervisor mode stack pointer.
Return value
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C TUint SvcStackAddr() const;
Description
Obtain the kernel supervisor mode stack base address.
Return value
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C TUint SvcStackSize() const;
Description
Obtain the kernel supervisor mode stack size in bytes.
Return value
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C TUint UsrStackAddr() const;
Description
Obtain the kernel user mode stack base address.
Return value
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C TUint UsrStackSize() const;
Description
Obtain the kernel user mode stack size in bytes.
Return value
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C TBool Observed() const;
Description
Returns ETrue if the thread is being explicitly observed for crashes by the Core Dump Server. If only the owning process is being observed, this method returns EFalse.
Return value
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C void Observed(TBool aFlag);
Description
Set whether this thread is being observed for crashes by the Core Dump Server.
Parameters
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C void SetLastCpuId(TInt32 aLastCpu);
Description
Parameters
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C TInt32 LastCpuId() const;
Description
Return value
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C void SetHeapBase(TUint32 aHeapSize);
Description
Parameters
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C TUint32 HeapBase() const;
Description
Return value
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C void SetHeapSize(TUint32 lastCpu);
Description
Parameters
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C TUint32 HeapSize() const;
Description
Return value
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C static TInt MaxSize();
Description
Get the maximum size allowed for this object. This is needed as the object is passed across the Client Server interface.
Return value
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C virtual TInt Size() const;
Description
Gets the size of the object when externalized. The sizeofs used to calculate this must match the operators used in ExternalizeL and InternalizeL. Special attention must be paid to the name. If the object has not been externalized yet then this method returns the maximum that it could take. The name descriptor is compressed when externalized, so it is not its CThreadInfo::Size()const. Furthermore the << operator adds two bytes to the stream when externalizing a descriptor
Return value
InternalizeL(RReadStream &)
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C virtual void InternalizeL(RReadStream &aStream);
Pre-Condition
Call Externalise to obtain the stream containing an externalised version of this object.
Description
Initialise this object with the contents of RReadStream aStream. The descriptor contains an externalised version of an object. This method is typically used to obtain a CThreadInfo object from the core dump server. Any modifications to this method should be synchronised with CThreadInfo::ExternalizeL(RWriteStream &,CBufFlat *). Also note that the methods used from RReadStream (>> or ReadUint32L) can behave differently, especially for descriptors.
Parameters
RReadStream &aStream |
Stream with streamed object |
|
See also:
ExternalizeL(RWriteStream &,CBufFlat *)
| Interface access: | publishedPartner | Inherited from: CThreadInfo |
IMPORT_C virtual void ExternalizeL(RWriteStream &aStream, CBufFlat *buf);
Description
Make a streamed representation of this object to RWriteStream aStream.
This method is typically by the core dump server when contructing a list of CThreadInfo for a client. Any modifications to this method should be synchronised with CThreadInfo::InternalizeL(RReadStream &). Also note that the methods used from RWriteStream (>> or WriteUint32L) can behave differently, especially for descriptors.
Post-Condition
The stream contains an externalised version of this object.
Parameters
RWriteStream &aStream |
Stream to stream object onto |
CBufFlat *buf |
Buffer onto the same stream, used to obtain correct size of externalised object |
|
See also:
| Interface access: | internal to technology | Default as private. |
private: TUint64 iId;
Description
Symbian kernel thread id
| Interface access: | internal to technology | Default as private. |
private: HBufC * iName;
Description
Symbian kernel thread name
| Interface access: | internal to technology | Default as private. |
private: TUint64 iProcessId;
Description
Symbian kernel process id of owning process
| Interface access: | internal to technology | Default as private. |
private: TUint iPriority;
Description
Symbian kernel thread priority TThreadPriority
| Interface access: | internal to technology | Default as private. |
private: TLinAddr iSvcStackPtr;
Description
Thread supervisor stack pointer
| Interface access: | internal to technology | Default as private. |
private: TLinAddr iSvcStackAddr;
Description
Thread supervisor mode stack base address
| Interface access: | internal to technology | Default as private. |
private: TUint iSvcStackSize;
Description
Thread supervisor mode stack size in bytes
| Interface access: | internal to technology | Default as private. |
private: TLinAddr iUsrStackAddr;
Description
Thread user mode stack base address
| Interface access: | internal to technology | Default as private. |
private: TUint iUsrStackSize;
Description
Thread user mode stack base size in bytes
| Interface access: | internal to technology | Default as private. |
private: TBool iObserved;
Description
Set to ETrue if the thread is being explicitly observed for crashes by the Core Dump Server. If only the owning process is being observed, this should be EFalse.
| Interface access: | internal to technology | Default as private. |
private: TUint iSize;
Description
Externalized size
| Interface access: | internal to technology | Default as private. |
private: TInt32 iLastCpuId;
Description
last cpu in use when crash occurred
| Interface access: | internal to technology | Default as private. |
private: TInt32 iHeapBase;
Description
threads heap base
| Interface access: | internal to technology | Default as private. |
private: TUint32 iHeapSize;
Description
thread heap size
| Interface access: | internal to technology | Default as private. |
private: TUint32 iSpare1;
Description
| Interface access: | internal to technology | Default as private. |
private: TUint32 iSpare2;
Description