|
MarlinMT
0.1.0
|
MemLayout for mutable object instances. More...
#include <MemLayout.h>
Inherits marlinmt::book::MemLayout.
Public Member Functions | |
| SharedMemLayout (std::size_t num_instances, Args_t... args) | |
| Constructor. More... | |
| SharedMemLayout (const SharedMemLayout &)=default | |
| SharedMemLayout & | operator= (const SharedMemLayout &)=default |
| SharedMemLayout (SharedMemLayout &&) noexcept=default | |
| SharedMemLayout & | operator= (SharedMemLayout &&) noexcept=default |
| ~SharedMemLayout () override final=default | |
Public Member Functions inherited from marlinmt::book::MemLayout | |
| template<typename T > | |
| std::shared_ptr< const T > | at (std::size_t idx) const |
| Get Resource for an instance. More... | |
| template<typename T > | |
| std::shared_ptr< T > | at (std::size_t idx) |
| Get Resource for an instance. More... | |
| template<typename T > | |
| std::shared_ptr< const T > | merged () |
| Get Completed Resource. More... | |
| MemLayout ()=default | |
| MemLayout (const MemLayout &)=default | |
| MemLayout & | operator= (const MemLayout &)=default |
| MemLayout (MemLayout &&)=default | |
| MemLayout & | operator= (MemLayout &&)=default |
| virtual | ~MemLayout ()=default |
Private Member Functions | |
| std::shared_ptr< void > | impAt (std::size_t idx) const override final |
| Get Resource for Instance. Lazy operation. More... | |
| std::shared_ptr< void > | impMerged () override final |
| implementation from merged More... | |
Private Attributes | |
| std::vector< std::shared_ptr< T > > | _objects |
| std::shared_ptr< T > | _mergedObj {nullptr} |
| std::unique_ptr< std::tuple< const typename std::remove_reference< Args_t >::type... > > | _ctor_p |
Additional Inherited Members |
MemLayout for mutable object instances.
| T | stored Object Type |
| MERGE | function(to, from) which merge to instances of Object |
Definition at line 70 of file MemLayout.h.
|
inlineexplicit |
Constructor.
| amount | of instances amount of Resource Instances |
| args | Arguments for Object Construction |
Definition at line 78 of file MemLayout.h.
References marlinmt::book::MemLayout::operator=().
|
default |
|
defaultnoexcept |
|
finaloverridedefault |
|
inlinefinaloverrideprivatevirtual |
Get Resource for Instance. Lazy operation.
Implements marlinmt::book::MemLayout.
Definition at line 97 of file MemLayout.h.
|
inlinefinaloverrideprivatevirtual |
implementation from merged
Implements marlinmt::book::MemLayout.
Definition at line 101 of file MemLayout.h.
|
default |
|
defaultnoexcept |
|
private |
Definition at line 117 of file MemLayout.h.
|
private |
Definition at line 114 of file MemLayout.h.
|
private |
Definition at line 113 of file MemLayout.h.