8#include <unordered_map>
12template <>
struct hash<
ROOT::Internal::RConcurrentHashColl::HashValue>
26 auto digest =
h.Get();
27 os << digest[0] <<
"-" << digest[1] <<
"-" << digest[2] <<
"-" << digest[3];
38 std::unordered_map<ROOT::Internal::RConcurrentHashColl::HashValue, RUidColl>
fHashMap;
49 auto iter =
fHashMap->fHashMap.find(hash);
50 if (iter !=
fHashMap->fHashMap.end())
51 return &(iter->second);
64 auto ret =
fHashMap->fHashMap.insert({hash, std::move(values)});
TBuffer & operator<<(TBuffer &buf, const Tmpl *obj)
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void data
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t UChar_t len
TRObject operator()(const T1 &t1) const
bool Insert(const HashValue &hash, RUidColl &&coll) const
If the hash is there, return false.
static HashValue Hash(char *buf, int len)
Return the hash object corresponding to the buffer.
std::unique_ptr< ROOT::TRWSpinLock > fRWLock
std::unique_ptr< RHashMap > fHashMap
const RUidColl * Find(const HashValue &hash) const
Return the collection of UID corresponding to the hash if the hash has already been seen or nullptr o...
std::vector< Int_t > RUidColl
void Sha256(const unsigned char *data, int len, ULong64_t *fDigest)
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
std::unordered_map< ROOT::Internal::RConcurrentHashColl::HashValue, RUidColl > fHashMap