ARTS  2.2.66
quantum.cc File Reference

Classes to handle quantum numbers. More...

#include "quantum.h"
#include <stdexcept>
#include "mystring.h"
Include dependency graph for quantum.cc:

Go to the source code of this file.

Macros

#define INPUT_QUANTUM(ID)   if (name == #ID) qn.Set(QN_ ## ID, r)
 
#define OUTPUT_QUANTUM(ID)
 

Functions

std::istream & operator>> (std::istream &is, QuantumNumbers &qn)
 
std::ostream & operator<< (std::ostream &os, const QuantumNumbers &qn)
 
std::ostream & operator<< (std::ostream &os, const QuantumNumberRecord &qr)
 

Detailed Description

Classes to handle quantum numbers.

Author
Oliver Lemke

Definition in file quantum.cc.

Macro Definition Documentation

◆ INPUT_QUANTUM

#define INPUT_QUANTUM (   ID)    if (name == #ID) qn.Set(QN_ ## ID, r)

Referenced by operator>>().

◆ OUTPUT_QUANTUM

#define OUTPUT_QUANTUM (   ID)
Value:
if (!qn[QN_ ## ID].isUndefined()) \
{ if (!first) os << " "; first = false; os << #ID << " " << qn[QN_ ## ID]; }

Referenced by operator<<().

Function Documentation

◆ operator<<() [1/2]

std::ostream& operator<< ( std::ostream &  os,
const QuantumNumbers qn 
)

Definition at line 93 of file quantum.cc.

References N, and OUTPUT_QUANTUM.

◆ operator<<() [2/2]

std::ostream& operator<< ( std::ostream &  os,
const QuantumNumberRecord qr 
)

Definition at line 117 of file quantum.cc.

References QuantumNumberRecord::Lower(), and QuantumNumberRecord::Upper().

◆ operator>>()

std::istream& operator>> ( std::istream &  is,
QuantumNumbers qn 
)

Definition at line 60 of file quantum.cc.

References INPUT_QUANTUM, and N.