Sequential Quantum Gate Decomposer  v1.9.6
Powerful decomposition of general unitarias into one- and two-qubit gates gates
List of all members | Public Member Functions | Private Attributes
SmartAtomicPtr< T > Class Template Reference

#include <utils.hpp>

Public Member Functions

std::shared_ptr< Tget () const
 
SmartAtomicPtroperator= (const SmartAtomicPtr &other)
 
SmartAtomicPtroperator= (SmartAtomicPtr &&other) noexcept
 
 SmartAtomicPtr ()=default
 
 SmartAtomicPtr (std::shared_ptr< T > p)
 
 SmartAtomicPtr (const SmartAtomicPtr &other)
 
 SmartAtomicPtr (SmartAtomicPtr &&other) noexcept
 
void update (std::shared_ptr< T > p)
 
void update (T *p)
 
 ~SmartAtomicPtr ()=default
 

Private Attributes

std::shared_ptr< Tptr_
 

Detailed Description

template<typename T>
class SmartAtomicPtr< T >

Definition at line 6 of file utils.hpp.

Constructor & Destructor Documentation

◆ SmartAtomicPtr() [1/4]

template<typename T>
SmartAtomicPtr< T >::SmartAtomicPtr ( )
default

◆ SmartAtomicPtr() [2/4]

template<typename T>
SmartAtomicPtr< T >::SmartAtomicPtr ( std::shared_ptr< T p)
inlineexplicit

Definition at line 10 of file utils.hpp.

◆ SmartAtomicPtr() [3/4]

template<typename T>
SmartAtomicPtr< T >::SmartAtomicPtr ( const SmartAtomicPtr< T > &  other)
inline

Definition at line 15 of file utils.hpp.

◆ SmartAtomicPtr() [4/4]

template<typename T>
SmartAtomicPtr< T >::SmartAtomicPtr ( SmartAtomicPtr< T > &&  other)
inlinenoexcept

Definition at line 26 of file utils.hpp.

◆ ~SmartAtomicPtr()

template<typename T>
SmartAtomicPtr< T >::~SmartAtomicPtr ( )
default
Here is the caller graph for this function:

Member Function Documentation

◆ get()

template<typename T>
std::shared_ptr<T> SmartAtomicPtr< T >::get ( ) const
inline

Definition at line 51 of file utils.hpp.

Here is the caller graph for this function:

◆ operator=() [1/2]

template<typename T>
SmartAtomicPtr& SmartAtomicPtr< T >::operator= ( const SmartAtomicPtr< T > &  other)
inline

Definition at line 18 of file utils.hpp.

◆ operator=() [2/2]

template<typename T>
SmartAtomicPtr& SmartAtomicPtr< T >::operator= ( SmartAtomicPtr< T > &&  other)
inlinenoexcept

Definition at line 31 of file utils.hpp.

◆ update() [1/2]

template<typename T>
void SmartAtomicPtr< T >::update ( std::shared_ptr< T p)
inline

Definition at line 42 of file utils.hpp.

Here is the caller graph for this function:

◆ update() [2/2]

template<typename T>
void SmartAtomicPtr< T >::update ( T p)
inline

Definition at line 48 of file utils.hpp.

Here is the caller graph for this function:

Member Data Documentation

◆ ptr_

template<typename T>
std::shared_ptr<T> SmartAtomicPtr< T >::ptr_
private

Definition at line 56 of file utils.hpp.


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