TypedNakedPointer

class kanzi::connect::TypedNakedPointer

Class to transfer naked (void *) pointer in a safer manner.

Public Types

enum PointerType

Values:

enumerator Int
enumerator Float
enumerator Bool
enumerator String
enumerator Binary
enumerator Package
enumerator Unspecified
typedef enum kanzi::connect::TypedNakedPointer::PointerType PointerType

Public Static Functions

MessagePackage *adoptFromCall(PointerType type, void *ptr)

Adopts a raw pointer and verifies its type.

Return

message package pointer if types match. else nullptr.

Parameters
  • type: expected type

  • ptr: raw pointer

shared_ptr<TypedNakedPointer> createForCalling(PointerType type, const MessagePackage &package)

Prepare a typed pointer to be passed as void*.

Return

The object that holds the pointer.

Parameters
  • type: pointer type information

  • package: the pointer