libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
pappso::cbor::CborStreamWriter Class Reference

overrides QCborStreamWriter base class to provide convenient functions More...

#include <cborstreamwriter.h>

Inheritance diagram for pappso::cbor::CborStreamWriter:

Public Member Functions

 CborStreamWriter (QByteArray *data)
 CborStreamWriter (QIODevice *device)
virtual ~CborStreamWriter ()
const QString & getUuid () const
 get UUID intialized when using writeInformations
void writeInformations (const QString &software_name, const QString &software_version, const QString &type, const QString &operation)
 automatically produces an informations CBOR map the "informations" map contains default parameters : software, versions, UUID
void writeCborMap (const QCborMap &cbor_map)
void writeCborArray (const QCborArray &cbor_array)
void writeArray (const std::vector< std::size_t > &int_list)
void writeArray (const std::vector< qint64 > &int_list)
void writeArray (const std::vector< double > &double_list)
void writeArray (const std::vector< int > &positions)
void writeArray (const std::vector< std::uint8_t > &small_uint_list)
void writeArray (const QStringList &str_list)
void writeArray (const std::vector< QString > &str_list)
void writeTrace (const pappso::Trace &trace, const QString &x_label="x", const QString &y_label="y")
 serialize a PAPPSO trace object to CBOR
void writeXicCoord (const pappso::XicCoord &xic_coord)
 serialize a PAPPSO xic coordinate object to CBOR
void writeXicCoordList (const std::vector< pappso::XicCoordSPtr > &xic_coord_list)
 serialize a PAPPSO xic coordinate object list to CBOR

Private Attributes

QString m_uuid

Detailed Description

overrides QCborStreamWriter base class to provide convenient functions

Definition at line 44 of file cborstreamwriter.h.

Constructor & Destructor Documentation

◆ CborStreamWriter() [1/2]

pappso::cbor::CborStreamWriter::CborStreamWriter ( QByteArray * data)

Default constructor

Definition at line 38 of file cborstreamwriter.cpp.

38 : QCborStreamWriter(data)
39{
40}

◆ CborStreamWriter() [2/2]

pappso::cbor::CborStreamWriter::CborStreamWriter ( QIODevice * device)

Definition at line 42 of file cborstreamwriter.cpp.

42 : QCborStreamWriter(device)
43{
44}

◆ ~CborStreamWriter()

pappso::cbor::CborStreamWriter::~CborStreamWriter ( )
virtual

Destructor

Definition at line 47 of file cborstreamwriter.cpp.

48{
49}

Member Function Documentation

◆ getUuid()

const QString & pappso::cbor::CborStreamWriter::getUuid ( ) const

get UUID intialized when using writeInformations

Returns
QString for the UUID

Definition at line 53 of file cborstreamwriter.cpp.

54{
55 return m_uuid;
56}

References m_uuid.

◆ writeArray() [1/7]

void pappso::cbor::CborStreamWriter::writeArray ( const QStringList & str_list)

Definition at line 151 of file cborstreamwriter.cpp.

152{
153 startArray(str_list.size());
154 for(auto str_item : str_list)
155 {
156 append(str_item);
157 }
158 endArray();
159}

◆ writeArray() [2/7]

void pappso::cbor::CborStreamWriter::writeArray ( const std::vector< double > & double_list)

Definition at line 104 of file cborstreamwriter.cpp.

105{
106 startArray(double_list.size());
107 for(auto num : double_list)
108 {
109 append(num);
110 }
111 endArray();
112}

◆ writeArray() [3/7]

void pappso::cbor::CborStreamWriter::writeArray ( const std::vector< int > & positions)

Definition at line 115 of file cborstreamwriter.cpp.

116{
117
118 startArray(positions.size());
119 for(auto num : positions)
120 {
121 append(num);
122 }
123 endArray();
124}

◆ writeArray() [4/7]

void pappso::cbor::CborStreamWriter::writeArray ( const std::vector< qint64 > & int_list)

Definition at line 139 of file cborstreamwriter.cpp.

140{
141
142 startArray(int_list.size());
143 for(auto num : int_list)
144 {
145 append(num);
146 }
147 endArray();
148}

◆ writeArray() [5/7]

void pappso::cbor::CborStreamWriter::writeArray ( const std::vector< QString > & str_list)

Definition at line 162 of file cborstreamwriter.cpp.

163{
164 startArray(str_list.size());
165 for(auto str_item : str_list)
166 {
167 append(str_item);
168 }
169 endArray();
170}

◆ writeArray() [6/7]

void pappso::cbor::CborStreamWriter::writeArray ( const std::vector< std::size_t > & int_list)

Definition at line 93 of file cborstreamwriter.cpp.

94{
95 startArray(int_list.size());
96 for(auto num : int_list)
97 {
98 append((quint64)num);
99 }
100 endArray();
101}

Referenced by pappso::cbor::mzcbor::MzmlConvert::writeMzcborIndex(), and writeTrace().

◆ writeArray() [7/7]

void pappso::cbor::CborStreamWriter::writeArray ( const std::vector< std::uint8_t > & small_uint_list)

Definition at line 127 of file cborstreamwriter.cpp.

128{
129
130 startArray(small_uint_list.size());
131 for(int num : small_uint_list)
132 {
133 append(num);
134 }
135 endArray();
136}

◆ writeCborArray()

void pappso::cbor::CborStreamWriter::writeCborArray ( const QCborArray & cbor_array)

Definition at line 179 of file cborstreamwriter.cpp.

180{
181 QCborValue(cbor_array).toCbor(*this);
182}

◆ writeCborMap()

void pappso::cbor::CborStreamWriter::writeCborMap ( const QCborMap & cbor_map)

Definition at line 173 of file cborstreamwriter.cpp.

174{
175 QCborValue(cbor_map).toCbor(*this);
176}

Referenced by pappso::cbor::psm::PsmFileAppend::readSample(), and pappso::cbor::psm::PsmProteinMap::writeMap().

◆ writeInformations()

void pappso::cbor::CborStreamWriter::writeInformations ( const QString & software_name,
const QString & software_version,
const QString & type,
const QString & operation )

automatically produces an informations CBOR map the "informations" map contains default parameters : software, versions, UUID

Definition at line 59 of file cborstreamwriter.cpp.

63{
64 append("informations");
65 startMap();
66 append(QLatin1String("software"));
67 append(software_name);
68 append(QLatin1String("version"));
69 append(software_version);
70 append(QLatin1String("type"));
71 append(type);
72 append(QLatin1String("operation"));
73 append(operation);
74 append(QLatin1String("cpu_used"));
75 append(QThreadPool::globalInstance()->maxThreadCount());
76 append(QLatin1String("pappsomspp_version"));
78 append(QLatin1String("sysinfo_machine_hostname"));
79 append(QSysInfo::machineHostName());
80 append(QLatin1String("sysinfo_product_name"));
81 append(QSysInfo::prettyProductName());
82 append(QLatin1String("timestamp"));
83 append(QDateTime::currentDateTime().toString(Qt::ISODate));
84
85 append(QLatin1String("uuid"));
86 m_uuid = QUuid::createUuid().toString();
87 append(m_uuid);
88 endMap();
89}
static QString getVersion()
Definition utils.cpp:650

References pappso::Utils::getVersion(), and m_uuid.

Referenced by pappso::cbor::mzcbor::MzmlConvert::writeMzcborIndex().

◆ writeTrace()

void pappso::cbor::CborStreamWriter::writeTrace ( const pappso::Trace & trace,
const QString & x_label = "x",
const QString & y_label = "y" )

serialize a PAPPSO trace object to CBOR

Parameters
tracePAPPSO trace object reference
x_labellabel for first dimension (x by default)
y_labellabel for second dimension (y by default)

Definition at line 185 of file cborstreamwriter.cpp.

188{
189 startMap(2);
190 append(x_label);
191 writeArray(trace.xValues());
192 append(y_label);
193 writeArray(trace.yValues());
194 endMap();
195}
std::vector< pappso_double > xValues() const
Definition trace.cpp:697
std::vector< pappso_double > yValues() const
Definition trace.cpp:711
void writeArray(const std::vector< std::size_t > &int_list)

References writeArray(), pappso::Trace::xValues(), and pappso::Trace::yValues().

Referenced by writeXicCoord().

◆ writeXicCoord()

void pappso::cbor::CborStreamWriter::writeXicCoord ( const pappso::XicCoord & xic_coord)

serialize a PAPPSO xic coordinate object to CBOR

Parameters
xicPAPPSO object reference

Definition at line 199 of file cborstreamwriter.cpp.

200{
201 startMap();
202 xic_coord.writeCborStream(*this);
203
204 if(xic_coord.xicSptr.get() != nullptr)
205 {
206 append("xic");
207 writeTrace(*xic_coord.xicSptr.get(), "rt", "intensities");
208 }
209 endMap();
210}
void writeTrace(const pappso::Trace &trace, const QString &x_label="x", const QString &y_label="y")
serialize a PAPPSO trace object to CBOR
XicSPtr xicSptr
extracted xic
Definition xiccoord.h:135
virtual void writeCborStream(QCborStreamWriter &cbor_writer) const
writes xic coordinates in a cbor stream
Definition xiccoord.cpp:127

References pappso::XicCoord::writeCborStream(), writeTrace(), and pappso::XicCoord::xicSptr.

Referenced by writeXicCoordList().

◆ writeXicCoordList()

void pappso::cbor::CborStreamWriter::writeXicCoordList ( const std::vector< pappso::XicCoordSPtr > & xic_coord_list)

serialize a PAPPSO xic coordinate object list to CBOR

Parameters
xic_coord_listPAPPSO object reference

Definition at line 214 of file cborstreamwriter.cpp.

215{
216
217 startArray(xic_coord_list.size());
218 for(auto &xic_coord_sp : xic_coord_list)
219 {
220 writeXicCoord(*xic_coord_sp.get());
221 }
222 endArray();
223}
void writeXicCoord(const pappso::XicCoord &xic_coord)
serialize a PAPPSO xic coordinate object to CBOR

References writeXicCoord().

Member Data Documentation

◆ m_uuid

QString pappso::cbor::CborStreamWriter::m_uuid
private

Definition at line 104 of file cborstreamwriter.h.

Referenced by getUuid(), and writeInformations().


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