Quantum++  v1.1
A modern C++11 quantum computing library
qpp::IDisplay Class Referenceabstract

Abstract class (interface) that mandates the definition of virtual std::ostream& display(std::ostream& os) const. More...

#include <classes/idisplay.h>

Inheritance diagram for qpp::IDisplay:

Public Member Functions

 IDisplay ()=default
 Default constructor. More...
 
 IDisplay (const IDisplay &)=default
 Default copy constructor. More...
 
 IDisplay (IDisplay &&)=default
 Default move constructor. More...
 
IDisplayoperator= (const IDisplay &)=default
 Default copy assignment operator. More...
 
IDisplayoperator= (IDisplay &&)=default
 Default move assignment operator. More...
 
virtual ~IDisplay ()=default
 Default virtual destructor. More...
 

Private Member Functions

virtual std::ostream & display (std::ostream &os) const =0
 Must be overridden by all derived classes. More...
 

Friends

std::ostream & operator<< (std::ostream &os, const IDisplay &rhs)
 Overloads the extraction operator. More...
 

Detailed Description

Abstract class (interface) that mandates the definition of virtual std::ostream& display(std::ostream& os) const.

This class defines friend inline std::ostream& operator<< (std::ostream& os, const qpp::IDisplay& rhs). The latter delegates the work to the pure private virtual function qpp::IDisplay::display() which has to be overridden by all derived classes.

Constructor & Destructor Documentation

◆ IDisplay() [1/3]

qpp::IDisplay::IDisplay ( )
default

Default constructor.

◆ IDisplay() [2/3]

qpp::IDisplay::IDisplay ( const IDisplay )
default

Default copy constructor.

◆ IDisplay() [3/3]

qpp::IDisplay::IDisplay ( IDisplay &&  )
default

Default move constructor.

◆ ~IDisplay()

virtual qpp::IDisplay::~IDisplay ( )
virtualdefault

Default virtual destructor.

Member Function Documentation

◆ display()

virtual std::ostream& qpp::IDisplay::display ( std::ostream &  os) const
privatepure virtual

Must be overridden by all derived classes.

The actual stream extraction processing is performed by the overriden member function in the derived class. This function is automatically invoked by friend inline std::ostream& operator<<(std::ostream& os, const IDisplay& rhs).

Implemented in qpp::Dynamic_bitset, qpp::internal::IOManipEigen, qpp::Timer< T, CLOCK_T >, qpp::internal::IOManipPointer< PointerType >, and qpp::internal::IOManipRange< InputIterator >.

◆ operator=() [1/2]

IDisplay& qpp::IDisplay::operator= ( const IDisplay )
default

Default copy assignment operator.

◆ operator=() [2/2]

IDisplay& qpp::IDisplay::operator= ( IDisplay &&  )
default

Default move assignment operator.

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const IDisplay rhs 
)
friend

Overloads the extraction operator.

Delegates the work to the virtual function qpp::IDisplay::display()


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