35 #ifndef OPENMS_FORMAT_MSNUMPRESSCODER_H
36 #define OPENMS_FORMAT_MSNUMPRESSCODER_H
73 numpressFixedPoint(0.0),
76 estimate_fixed_point(false)
110 encodeNP_(in, result, config);
117 std::vector<String> tmp;
118 tmp.push_back(result);
119 base64coder_.encodeStrings(tmp, result, zlib_compression,
false);
126 std::vector<double> dvector(in.begin(), in.end());
127 encodeNP(dvector, result, zlib_compression, config);
151 QByteArray base64_uncompressed;
152 base64coder_.decodeSingleString(in, base64_uncompressed, zlib_compression);
155 std::string tmpstring(base64_uncompressed.constData(), base64_uncompressed.size());
156 decodeNP_(tmpstring, out, config);
173 void encodeNP_(
const std::vector<double> & in,
String & result,
const NumpressConfig & config);
184 void decodeNP_(
const std::string & in, std::vector<double> & out,
const NumpressConfig & config);
186 void decodeNPInternal_(
const unsigned char* in,
size_t in_size, std::vector<double>& out,
const NumpressConfig & config);
Class to encode and decode data encoded with MSNumpress.
Definition: MSNumpressCoder.h:53
NumpressCompression np_compression
check error tolerance after encoding, guarantee abs(1.0-(encoded/decoded)) <= this, 0=do not guarantee anything
Definition: MSNumpressCoder.h:69
MSNumpressCoder()
default constructor
Definition: MSNumpressCoder.h:83
A more convenient string class.
Definition: String.h:57
Class to encode and decode Base64.
Definition: Base64.h:64
const double BinaryDataEncoder_default_numpressErrorTolerance
Definition: MSNumpressCoder.h:42
Configuration class for MSNumpress.
Definition: MSNumpressCoder.h:65
void decodeNP(const String &in, std::vector< double > &out, bool zlib_compression, const NumpressConfig &config)
Decodes a Base64 string to a vector of floating point numbers using numpress.
Definition: MSNumpressCoder.h:148
NumpressCompression
Definition: MSNumpressCoder.h:58
void encodeNP(const std::vector< float > &in, String &result, bool zlib_compression, const NumpressConfig &config)
encodeNP from a float (convert first to double)
Definition: MSNumpressCoder.h:123
NumpressConfig()
whether to estimate the fixed point or use the one proved with numpressFixedPoint ...
Definition: MSNumpressCoder.h:72
double numpressFixedPoint
Definition: MSNumpressCoder.h:67
Base64 base64coder_
Definition: MSNumpressCoder.h:188
bool estimate_fixed_point
which compression schema to use
Definition: MSNumpressCoder.h:70
virtual ~MSNumpressCoder()
Destructor.
Definition: MSNumpressCoder.h:86
void encodeNP(const std::vector< double > &in, String &result, bool zlib_compression, const NumpressConfig &config)
Encodes a vector of floating point numbers into a Base64 string using numpress.
Definition: MSNumpressCoder.h:106
double numpressErrorTolerance
fixed point for numpress algorithms
Definition: MSNumpressCoder.h:68