Mercurial > hg > orthanc-stone
comparison Framework/Messages/ICallable.h @ 1262:ca2058bd74ef toa2020012702
Changed fingerprint from uuid_t to int64_t + poor man's
checksum (to fix emscripten syscall error + make it faster)
author | Benjamin Golinvaux <bgo@osimis.io> |
---|---|
date | Mon, 27 Jan 2020 15:13:00 +0100 |
parents | 3f6e5a38c88f |
children | e9687648d7af |
comparison
equal
deleted
inserted
replaced
1261:4c1c9df47d46 | 1262:ca2058bd74ef |
---|---|
63 private: | 63 private: |
64 typedef void (TObserver::* MemberFunction) (const TMessage&); | 64 typedef void (TObserver::* MemberFunction) (const TMessage&); |
65 | 65 |
66 TObserver& observer_; | 66 TObserver& observer_; |
67 MemberFunction function_; | 67 MemberFunction function_; |
68 std::string observerFingerprint_; | 68 int64_t observerFingerprint_; |
69 | 69 |
70 public: | 70 public: |
71 Callable(TObserver& observer, | 71 Callable(TObserver& observer, |
72 MemberFunction function) : | 72 MemberFunction function) : |
73 observer_(observer), | 73 observer_(observer), |
76 { | 76 { |
77 } | 77 } |
78 | 78 |
79 void ApplyInternal(const TMessage& message) | 79 void ApplyInternal(const TMessage& message) |
80 { | 80 { |
81 std::string currentFingerprint(observer_.GetFingerprint()); | 81 int64_t currentFingerprint(observer_.GetFingerprint()); |
82 if (observerFingerprint_ != currentFingerprint) | 82 if (observerFingerprint_ != currentFingerprint) |
83 { | 83 { |
84 LOG(TRACE) << "The observer at address " << | 84 LOG(TRACE) << "The observer at address " << |
85 std::hex << &observer_ << std::dec << | 85 std::hex << &observer_ << std::dec << |
86 ") has a different fingerprint than the one recorded at callback " << | 86 ") has a different fingerprint than the one recorded at callback " << |