Audacity  3.0.3
Public Types | Public Member Functions | List of all members
ClientData::Cloneable< Owner > Struct Template Referenceabstract

A convenient base class defining abstract virtual Clone() for a given kind of pointer. More...

#include <ClientData.h>

Public Types

using Base = Cloneable
 
using PointerType = Owner< Base >
 

Public Member Functions

virtual ~Cloneable ()
 
virtual PointerType Clone () const =0
 

Detailed Description

template<template< typename > class Owner = UniquePtr>
struct ClientData::Cloneable< Owner >

A convenient base class defining abstract virtual Clone() for a given kind of pointer.

Template Parameters
Ownertemplate-template parameter for the kind of smart pointer, like std::shared_ptr, returned by Clone()
See also
ClientData::DeepCopying

Definition at line 47 of file ClientData.h.

Member Typedef Documentation

◆ Base

template<template< typename > class Owner = UniquePtr>
using ClientData::Cloneable< Owner >::Base = Cloneable

Definition at line 49 of file ClientData.h.

◆ PointerType

template<template< typename > class Owner = UniquePtr>
using ClientData::Cloneable< Owner >::PointerType = Owner< Base >

Definition at line 50 of file ClientData.h.

Constructor & Destructor Documentation

◆ ~Cloneable()

ClientData::Cloneable::~Cloneable ( )
virtualdefault

Member Function Documentation

◆ Clone()

template<template< typename > class Owner = UniquePtr>
virtual PointerType ClientData::Cloneable< Owner >::Clone ( ) const
pure virtual

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