A pointer registry mechanism to manage memory and provide search functionalities. (non-predicate version) More...
#include <easylogging++.h>
Public Types | |
typedef Registry< T_Ptr, T_Key >::const_iterator | const_iterator |
typedef Registry< T_Ptr, T_Key >::iterator | iterator |
Public Types inherited from el::base::utils::AbstractRegistry< T_Ptr, std::unordered_map< T_Key, T_Ptr * > > | |
typedef std::unordered_map< T_Key, T_Ptr * >::const_iterator | const_iterator |
typedef std::unordered_map< T_Key, T_Ptr * >::iterator | iterator |
Public Member Functions | |
Registry & | operator= (const Registry &sr) |
Assignment operator that unregisters all the existing registeries and deeply copies each of repo element. More... | |
Registry (void) | |
Registry (const Registry &sr) | |
Copy constructor that is useful for base classes. Try to avoid this constructor, use move constructor. More... | |
virtual | ~Registry (void) |
Public Member Functions inherited from el::base::utils::AbstractRegistry< T_Ptr, std::unordered_map< T_Key, T_Ptr * > > | |
AbstractRegistry (void) | |
Default constructor. More... | |
AbstractRegistry (AbstractRegistry &&sr) | |
Move constructor that is useful for base classes. More... | |
virtual iterator | begin (void) ELPP_FINAL |
virtual const_iterator | cbegin (void) const ELPP_FINAL |
virtual const_iterator | cend (void) const ELPP_FINAL |
virtual bool | empty (void) const ELPP_FINAL |
virtual iterator | end (void) ELPP_FINAL |
virtual std::unordered_map< T_Key, T_Ptr * > & | list (void) ELPP_FINAL |
Returns underlying container by reference. More... | |
virtual const std::unordered_map< T_Key, T_Ptr * > & | list (void) const ELPP_FINAL |
Returns underlying container by constant reference. More... | |
bool | operator!= (const AbstractRegistry< T_Ptr, std::unordered_map< T_Key, T_Ptr * > > &other) |
AbstractRegistry & | operator= (AbstractRegistry &&sr) |
Assignment move operator. More... | |
bool | operator== (const AbstractRegistry< T_Ptr, std::unordered_map< T_Key, T_Ptr * > > &other) |
virtual std::size_t | size (void) const ELPP_FINAL |
virtual | ~AbstractRegistry (void) |
Public Member Functions inherited from el::base::threading::ThreadSafe | |
virtual void | acquireLock (void) ELPP_FINAL |
virtual base::threading::Mutex & | lock (void) ELPP_FINAL |
virtual void | releaseLock (void) ELPP_FINAL |
Protected Member Functions | |
T_Ptr * | get (const T_Key &uniqKey) |
Gets pointer from repository. If none found, nullptr is returned. More... | |
virtual void | registerNew (const T_Key &uniqKey, T_Ptr *ptr) ELPP_FINAL |
Registers new registry to repository. More... | |
void | unregister (const T_Key &uniqKey) |
Unregisters single entry mapped to specified unique key. More... | |
virtual void | unregisterAll (void) ELPP_FINAL |
Unregisters all the pointers from current repository. More... | |
Protected Member Functions inherited from el::base::utils::AbstractRegistry< T_Ptr, std::unordered_map< T_Key, T_Ptr * > > | |
virtual void | deepCopy (const AbstractRegistry< T_Ptr, std::unordered_map< T_Key, T_Ptr * > > &)=0 |
void | reinitDeepCopy (const AbstractRegistry< T_Ptr, std::unordered_map< T_Key, T_Ptr * > > &sr) |
Protected Member Functions inherited from el::base::threading::ThreadSafe | |
ThreadSafe (void) | |
virtual | ~ThreadSafe (void) |
Private Member Functions | |
virtual void | deepCopy (const AbstractRegistry< T_Ptr, std::unordered_map< T_Key, T_Ptr * >> &sr) ELPP_FINAL |
A pointer registry mechanism to manage memory and provide search functionalities. (non-predicate version)
NOTE: This is thread-unsafe implementation (although it contains lock function, it does not use these functions) of AbstractRegistry<T_Ptr, Container>. Any implementation of this class should be explicitly (by using lock functions)
Definition at line 1363 of file easylogging++.h.
typedef Registry<T_Ptr, T_Key>::const_iterator el::base::utils::Registry< T_Ptr, T_Key >::const_iterator |
Definition at line 1366 of file easylogging++.h.
typedef Registry<T_Ptr, T_Key>::iterator el::base::utils::Registry< T_Ptr, T_Key >::iterator |
Definition at line 1365 of file easylogging++.h.
|
inline |
Definition at line 1368 of file easylogging++.h.
|
inline |
Copy constructor that is useful for base classes. Try to avoid this constructor, use move constructor.
Definition at line 1371 of file easylogging++.h.
|
inlinevirtual |
Definition at line 1389 of file easylogging++.h.
|
inlineprivatevirtual |
Definition at line 1427 of file easylogging++.h.
|
inlineprotected |
Gets pointer from repository. If none found, nullptr is returned.
Definition at line 1419 of file easylogging++.h.
|
inline |
Assignment operator that unregisters all the existing registeries and deeply copies each of repo element.
Definition at line 1381 of file easylogging++.h.
|
inlineprotectedvirtual |
Registers new registry to repository.
Definition at line 1404 of file easylogging++.h.
|
inlineprotected |
Unregisters single entry mapped to specified unique key.
Definition at line 1410 of file easylogging++.h.
|
inlineprotectedvirtual |
Unregisters all the pointers from current repository.
Implements el::base::utils::AbstractRegistry< T_Ptr, std::unordered_map< T_Key, T_Ptr * > >.
Definition at line 1394 of file easylogging++.h.