3
* Author: Peter G. Jensen
5
* Created on 31 May 2017, 09:26
15
#include "MurmurHash2.h"
20
namespace PetriEngine {
21
namespace Simplification {
40
size_t data_size() const;
42
bool operator ==(const Vector& other) const
44
return _data == other._data;
49
const void* raw() const
54
size_t refs() const { return ref; }
56
std::ostream& print(std::ostream& ss) const
59
for(const std::pair<int,int>& el : _data)
61
while(index < el.first) { ss << "0 "; ++index; }
62
ss << el.second << " ";
68
void write(std::vector<double>& dest) const
70
memset(dest.data(), 0, sizeof (double) * dest.size());
72
for(const std::pair<int,int>& el : _data)
74
dest[el.first + 1] = el.second;
80
Vector(const std::vector<int>& data)
82
for(size_t i = 0; i < data.size(); ++i)
86
_data.emplace_back(i, data[i]);
91
std::vector<std::pair<int,int>> _data;
92
LPCache* factory = NULL;
100
using namespace PetriEngine::Simplification;
105
size_t operator()(const Vector& k) const
107
return MurmurHash64A(k.raw(),
114
#endif /* VECTOR_H */