RecorderBase

class RecorderBase

This is the base class to a number of objects that record particular kinds of user input (like a MouseRecorder) to use in conjunction with a RecorderController to record the user’s inputs for a session.

Note that RecorderBase does not actually inherit from TypedObject, even though it defines get_type(). The assumption is that the classes that derive from RecorderBase might also inherit independently from TypedObject.

It also does not inherit from TypedWritable, but it defines a method called write_recorder() which is very similar to a TypedWritable’s write_datagram(). Classes that derive from RecorderBase and also inherit from TypedWritable may choose to remap write_recorder() to do exactly the same thing as write_datagram(), or they may choose to write something slightly different.

Most types of recorders should derive from Recorder, as it derives from ReferenceCount, except for MouseRecorder, which would otherwise doubly inherit from ReferenceCount.

Inheritance diagram

Inheritance diagram of RecorderBase

static TypeHandle get_class_type(void)
bool is_playing(void) const

Returns true if this recorder is presently playing back data from session file, false otherwise. If this is true, play_data() will be called from time to time.

bool is_recording(void) const

Returns true if this recorder is presently recording data for saving to a session file, false otherwise. If this is true, record_data() will be called from time to time.