TEMU  4.4
The Terma Emulator
temu_Object Struct Reference

#include </builds/termade/temu/temu/include/temu-c/Support/Objsys.h>

Collaboration diagram for temu_Object:

Data Fields

temu_ClassClass
 Class pointer. More...
 
char * Name
 Object name. More...
 
temu_TimeSourceTimeSource
 Timesource object. More...
 
temu_ComponentComponent
 Parent component (null for root comp) More...
 
uint64_t LoggingFlags
 Log category enabled/disabled. More...
 
int64_t WillDisposeNotification
 
int64_t DisposedNotification
 
void * UserData
 User data pointer. This is not saved in snapshots. More...
 
uint64_t IsClassObject: 1
 The object is a class object. More...
 
uint64_t IsCheckpointable: 1
 The object is snapshottable. More...
 
uint64_t IsTimeSource: 1
 
uint64_t TraceMemoryReads: 1
 
uint64_t TraceMemoryWrites: 1
 
uint64_t BreakOnMemoryRead: 1
 
uint64_t BreakOnMemoryWrite: 1
 

Detailed Description

Root object type for all TEMU objects.

The TEMU object system is used for defining models in TEMU. All models must derive from temu_Object.

Inheritance in C is done by placing a temu_Object field as the first field in the derived struct.

TEMU by convention use the name Super for the parent field name.

The type contains a UserData void pointer that can be used by for example simulator integrators. The UserData field can be written by the user. The field is guaranteed to not be modified by the TEMU runtime.

Note
While the convention in C is safe, in {cpp} it is the responsibility of the user to ensure that the derived type is a standard layout type.

Field Documentation

◆ BreakOnMemoryRead

uint64_t temu_Object::BreakOnMemoryRead

Memory read accesses to this object will trigger break

◆ BreakOnMemoryWrite

uint64_t temu_Object::BreakOnMemoryWrite

Memory write accesses to this object will trigger break

◆ Class

temu_Class* temu_Object::Class

Class pointer.

◆ Component

temu_Component* temu_Object::Component

Parent component (null for root comp)

◆ DisposedNotification

int64_t temu_Object::DisposedNotification

Notification emitted after object has been deleted

◆ IsCheckpointable

uint64_t temu_Object::IsCheckpointable

The object is snapshottable.

◆ IsClassObject

uint64_t temu_Object::IsClassObject

The object is a class object.

◆ IsTimeSource

uint64_t temu_Object::IsTimeSource

The object is a time source (can be safely casted to temu_TimeSource)

◆ LoggingFlags

uint64_t temu_Object::LoggingFlags

Log category enabled/disabled.

◆ Name

char* temu_Object::Name

Object name.

◆ TimeSource

temu_TimeSource* temu_Object::TimeSource

Timesource object.

◆ TraceMemoryReads

uint64_t temu_Object::TraceMemoryReads

Memory read accesses to this object will be traced by memory space

◆ TraceMemoryWrites

uint64_t temu_Object::TraceMemoryWrites

Memory write accesses to this object will be traced by memory space

◆ UserData

void* temu_Object::UserData

User data pointer. This is not saved in snapshots.

◆ WillDisposeNotification

int64_t temu_Object::WillDisposeNotification

Notification emitted before object is deleted


The documentation for this struct was generated from the following file: