GpgFrontend::Thread::Task::DataObject Class Reference

DataObject to be passed to the callback function. More...

`#include <Task.h>`

Collaboration diagram for GpgFrontend::Thread::Task::DataObject:

## Classes

struct | Destructor

## Public Member Functions

size_t | GetObjectSize ()
| Get the Objects Size. More...
template<typename T >
void | AppendObject (T &&obj)
template<typename T >
void | AppendObject (T *obj)
template<typename T >
T | PopObject ()
| ~DataObject ()
| Destroy the Data Object object. More...

## Private Member Functions

Destructor * | get_heap_ptr (size_t bytes_size)
| Get the heap ptr object. More...
void | free_heap_ptr (Destructor *)

## Private Attributes

std::stack< Destructor * > | data_objects_

## Detailed Description

DataObject to be passed to the callback function.

## Constructor & Destructor Documentation

## ~DataObject()

GpgFrontend::Thread::Task::DataObject::~DataObject | ( |  | ) |

Destroy the Data Object object.

## Member Function Documentation

## AppendObject() [1/2]

template<typename T >

void GpgFrontend::Thread::Task::DataObject::AppendObject | ( | T && | obj | ) |

inline

Template Parameters

  T |

Parameters

  ptr |

## AppendObject() [2/2]

template<typename T >

void GpgFrontend::Thread::Task::DataObject::AppendObject | ( | T * | obj | ) |

inline

Template Parameters

  T |

Parameters

  ptr |

## free_heap_ptr()

void GpgFrontend::Thread::Task::DataObject::free_heap_ptr | ( | Destructor * | ptr | ) |

private

Parameters

  heap_ptr |

## get_heap_ptr()

GpgFrontend::Thread::Task::DataObject::Destructor * GpgFrontend::Thread::Task::DataObject::get_heap_ptr | ( | size_t | bytes_size | ) |

private

Get the heap ptr object.

Parameters

  bytes_size |

Returns
  void*

## GetObjectSize()

size_t GpgFrontend::Thread::Task::DataObject::GetObjectSize | ( |  | ) |

Get the Objects Size.

Returns
  size_t

## PopObject()

template<typename T >

T GpgFrontend::Thread::Task::DataObject::PopObject | ( |  | ) |

inline

Template Parameters

  T |

Returns
  std::shared_ptr<T>

The documentation for this class was generated from the following files:

- src/core/thread/Task.h
- src/core/thread/Task.cpp