Class IUserData

Class Documentation

class IUserData

Interface for declaring custom user data to include with each IFunctionCall.

Users who want to attach additional data to an args struct should implement this interface in order to serialize their given data. If IUserData is provided for an IFunctionCall, IFunctionCall will call into the matching respective methods on IUserData after the normal fields are handled.

Public Functions

IUserData(ArgsReader *reader)
IUserData(ArgsWriter *writer)
inline virtual ~IUserData()
virtual void Read() = 0

Deserializes custom user data, called during IFunctionCall::Read.

Uses the same ArgsReader that is used to read other fields for the associated FunctionCall

virtual void PreWrite() = 0

Serializes custom user data, called during IFunctionCall::PreWrite.

Uses the same ArgsWriter that is used to write other fields for the associated FunctionCall

virtual void PostWrite() = 0

Serializes the custom user data, called during IFunctionCall::PostWrite.

Uses the same ArgsWriter that is used to write other fields for the associated FunctionCall

void SetArgsWriter(ArgsWriter *writer)

Provides argswriter for write operations.

Required for subcapture api call processing. Same UserData is used for reading and writing

Protected Attributes

ArgsWriter *mWriter = nullptr
ArgsReader *mReader = nullptr