# PhasicFlow: ListPtr< T > Class Template Reference

ListPtr< T > Class Template Reference
Inheritance diagram for ListPtr< T >:
[legend]

## Public Types

using | ListPtrType = ListPtr< T >
using | listType = std::list< T * >

## Public Member Functions

| TypeInfoTemplateNV ("ListPtr", T)
| ListPtr ()
| ListPtr (size_t len)
| ListPtr (const ListPtrType &src)
ListPtrType & | operator= (const ListPtrType &rhs)
| ListPtr (ListPtrType &&src)
ListPtrType & | operator= (ListPtrType &&rhs)
ListPtrType * | clonePtr () const
uniquePtr< ListPtrType > | clone () const
| ~ListPtr ()
T * | set (label i, T *ptr)
uniquePtr< T > | set (label i, uniquePtr< T > &ptr)
template<typename... Args>
uniquePtr< T > | setSafe (label i, Args &&... args)
void | push_back (T *ptr)
void | push_back (uniquePtr< T > &ptr)
template<typename... Args>
void | push_backSafe (Args &&... args)
T & | operator[] (label i)
const T & | operator[] (label i) const
size_t | size () const
auto | empty () const
uniquePtr< T > | release (label i)
void | clear ()
void | clear (label i)
template<typename... Args>
pFlow::uniquePtr< T > | setSafe (label i, Args &&... args)

## Static Public Member Functions

template<typename... Args>
static uniquePtr< T > | makeSafe (Args &&... args)

## Protected Member Functions

bool | copy (const ListPtrType &src)
T * | ptr (label i)
const T * | ptr (label i) const
auto | pos (label i)
auto | pos (label i) const

## Protected Attributes

std::list< T * > | list_

## Detailed Description

### template<typename T>
class pFlow::ListPtr< T >

Definition at line 38 of file ListPtr.hpp.

## Member Typedef Documentation

## ListPtrType

using ListPtrType = ListPtr<T>

Definition at line 42 of file ListPtr.hpp.

## listType

using listType = std::list<T*>

Definition at line 43 of file ListPtr.hpp.

## Constructor & Destructor Documentation

## ListPtr() [1/4]

ListPtr | ( |  | ) |

inline

Definition at line 86 of file ListPtr.hpp.

## ListPtr() [2/4]

ListPtr | ( | size_t | len | ) |

inline

Definition at line 92 of file ListPtr.hpp.

## ListPtr() [3/4]

ListPtr | ( | const ListPtrType & | src | ) |

Definition at line 106 of file ListPtrI.hpp.

## ListPtr() [4/4]

ListPtr | ( | ListPtrType && | src | ) |

inline

Definition at line 108 of file ListPtr.hpp.

## ~ListPtr()

~ListPtr | ( |  | ) |

inline

Definition at line 136 of file ListPtr.hpp.

## Member Function Documentation

## makeSafe()

static uniquePtr<T> makeSafe | ( | Args &&... | args | ) |

inlinestatic

Definition at line 47 of file ListPtr.hpp.

## copy()

bool copy | ( | const ListPtrType & | src | ) |

inlineprotected

Definition at line 22 of file ListPtrI.hpp.

## ptr() [1/2]

T * ptr | ( | label | i | ) |

protected

Definition at line 42 of file ListPtrI.hpp.

Referenced by ListPtr< pFlow::processField >::clonePtr().

Here is the caller graph for this function:

## ptr() [2/2]

const T * ptr | ( | label | i | ) | const

protected

Definition at line 55 of file ListPtrI.hpp.

## pos() [1/2]

auto pos | ( | label | i | ) |

protected

Definition at line 70 of file ListPtrI.hpp.

## pos() [2/2]

auto pos | ( | label | i | ) | const

protected

Definition at line 88 of file ListPtrI.hpp.

## TypeInfoTemplateNV()

TypeInfoTemplateNV | ( | "ListPtr< T >" | ,
|  | T |
| ) |  |

## operator=() [1/2]

pFlow::ListPtr< T > & operator= | ( | const ListPtrType & | rhs | ) |

Definition at line 123 of file ListPtrI.hpp.

## operator=() [2/2]

ListPtrType& operator= | ( | ListPtrType && | rhs | ) |

inline

Definition at line 115 of file ListPtr.hpp.

## clonePtr()

ListPtrType* clonePtr | ( |  | ) | const

inline

Definition at line 124 of file ListPtr.hpp.

## clone()

uniquePtr<ListPtrType> clone | ( |  | ) | const

inline

Definition at line 130 of file ListPtr.hpp.

## set() [1/2]

T * set | ( | label | i,
|  | T * | ptr
| ) |  |

Definition at line 148 of file ListPtrI.hpp.

## set() [2/2]

pFlow::uniquePtr< T > set | ( | label | i,
|  | uniquePtr< T > & | ptr
| ) |  |

Definition at line 159 of file ListPtrI.hpp.

## setSafe() [1/2]

uniquePtr<T> setSafe | ( | label | i,
|  | Args &&... | args
| ) |  |

## push_back() [1/2]

void push_back | ( | T * | ptr | ) |

Definition at line 195 of file ListPtrI.hpp.

## push_back() [2/2]

void push_back | ( | uniquePtr< T > & | ptr | ) |

Definition at line 203 of file ListPtrI.hpp.

## push_backSafe()

void push_backSafe | ( | Args &&... | args | ) |

Definition at line 210 of file ListPtrI.hpp.

## operator[]() [1/2]

T & operator[] | ( | label | i | ) |

Definition at line 218 of file ListPtrI.hpp.

## operator[]() [2/2]

const T & operator[] | ( | label | i | ) | const

Definition at line 236 of file ListPtrI.hpp.

## size()

size_t size

Definition at line 252 of file ListPtrI.hpp.

## empty()

auto empty

Definition at line 258 of file ListPtrI.hpp.

## release()

pFlow::uniquePtr< T > release | ( | label | i | ) |

Definition at line 265 of file ListPtrI.hpp.

## clear() [1/2]

void clear

Definition at line 275 of file ListPtrI.hpp.

Referenced by ListPtr< pFlow::processField >::operator=(), and ListPtr< pFlow::processField >::~ListPtr().

Here is the caller graph for this function:

## clear() [2/2]

void clear | ( | label | i | ) |

Definition at line 290 of file ListPtrI.hpp.

## setSafe() [2/2]

pFlow::uniquePtr<T> setSafe | ( | label | i,
|  | Args &&... | args
| ) |  |

Definition at line 184 of file ListPtrI.hpp.

## Member Data Documentation

## list_

std::list<T*> list_

protected

Definition at line 57 of file ListPtr.hpp.

Referenced by ListPtr< pFlow::processField >::copy(), and ListPtr< pFlow::processField >::operator=().

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

- src/phasicFlow/containers/List/ListPtr/ListPtr.hpp
- src/phasicFlow/containers/List/ListPtr/ListPtrI.hpp