* tdm_datatype: satisfy "rule of two"

* tdm_termite: summarize_member: pass by reference
* setup.py: remove unused imports
This commit is contained in:
Mario Fink 2021-05-05 12:48:25 +02:00
parent 8d1577806b
commit e46e3f866b
4 changed files with 25 additions and 10 deletions

View File

@ -17,6 +17,7 @@ typedef double eFloat64Usi;
class tdmdatatype
{
protected:
eInt16Usi sint16_; // 0
eInt32Usi sint32_; // 1
@ -26,6 +27,7 @@ protected:
eFloat32Usi float32_; // 5
eFloat64Usi float64_; // 6
short int dtidx_; // \in \{0,...,6\}
public:
tdmdatatype(): sint16_(0), sint32_(0),
uint8_(0), uint16_(0), uint32_(0),
@ -43,6 +45,19 @@ public:
// identify type
short int& dtype() { return dtidx_; }
// copy constructor
tdmdatatype(const tdmdatatype &num)
{
this->sint16_ = num.sint16_;
this->sint32_ = num.sint32_;
this->uint8_ = num.uint8_;
this->uint16_ = num.uint16_;
this->uint32_ = num.uint32_;
this->float32_ = num.float32_;
this->float64_ = num.float64_;
this->dtidx_ = num.dtidx_;
}
// overall assignment operator
tdmdatatype& operator=(const tdmdatatype &num)
{
@ -55,9 +70,10 @@ public:
this->uint32_ = num.uint32_;
this->float32_ = num.float32_;
this->float64_ = num.float64_;
this->dtidx_ = num.dtidx_;
}
return *this;
return *this;
}
// implement assignment operator for individual datatypes

View File

@ -568,7 +568,7 @@ template std::string tdm_termite::get_overview<submatrix>(format formatter);
template std::string tdm_termite::get_overview<localcolumn>(format formatter);
template std::string tdm_termite::get_overview<block>(format formatter);
void tdm_termite::summarize_member(tdm_channelgroup chp, std::string& summary, format& formatter)
void tdm_termite::summarize_member(tdm_channelgroup &chp, std::string& summary, format& formatter)
{
for ( std::map<std::string,tdm_channelgroup>::iterator it=this->tdmchannelgroups_.begin();
it!=this->tdmchannelgroups_.end(); ++it)
@ -578,7 +578,7 @@ void tdm_termite::summarize_member(tdm_channelgroup chp, std::string& summary, f
}
}
void tdm_termite::summarize_member(submatrix sbm, std::string& summary, format& formatter)
void tdm_termite::summarize_member(submatrix &sbm, std::string& summary, format& formatter)
{
for ( std::map<std::string,submatrix>::iterator it=this->submatrices_.begin();
it!=this->submatrices_.end(); ++it)
@ -588,7 +588,7 @@ void tdm_termite::summarize_member(submatrix sbm, std::string& summary, format&
}
}
void tdm_termite::summarize_member(localcolumn lcc, std::string& summary, format& formatter)
void tdm_termite::summarize_member(localcolumn &lcc, std::string& summary, format& formatter)
{
for ( std::map<std::string,localcolumn>::iterator it=this->localcolumns_.begin();
it!=this->localcolumns_.end(); ++it)
@ -598,7 +598,7 @@ void tdm_termite::summarize_member(localcolumn lcc, std::string& summary, format
}
}
void tdm_termite::summarize_member(block blk, std::string& summary, format& formatter)
void tdm_termite::summarize_member(block &blk, std::string& summary, format& formatter)
{
for ( std::map<std::string,block>::iterator it=this->tdx_blocks_.begin();
it!=this->tdx_blocks_.end(); ++it)

View File

@ -184,10 +184,10 @@ public:
template<typename tdmelement>
std::string get_overview(format formatter);
private:
void summarize_member(tdm_channelgroup chp, std::string& summary, format& formatter);
void summarize_member(submatrix sbm, std::string& summary, format& formatter);
void summarize_member(localcolumn lcc, std::string& summary, format& formatter);
void summarize_member(block blk, std::string& summary, format& formatter);
void summarize_member(tdm_channelgroup &chp, std::string& summary, format& formatter);
void summarize_member(submatrix &sbm, std::string& summary, format& formatter);
void summarize_member(localcolumn &lcc, std::string& summary, format& formatter);
void summarize_member(block &blk, std::string& summary, format& formatter);
public:
// get list of channelgroup ids

View File

@ -1,6 +1,5 @@
from setuptools import setup, Extension
import os
with open("README.md", "r", encoding="utf-8") as fh:
long_description = fh.read()