+ // STL map are not guaranteed to be thread safe even
+ // for read-access so we need this two helpers to access them.
+ EndgameEvaluationFunction* getEEF(Key key) {
+
+ EndgameEvaluationFunction* f = NULL;
+
+ lock_grab(&EEFmapLock);
+
+ if (EEFmap.find(key) != EEFmap.end())
+ f = EEFmap[key];
+
+ lock_release(&EEFmapLock);
+ return f;
+ }
+
+ ScalingInfo getESF(Key key) {
+
+ ScalingInfo si = {WHITE, NULL};
+
+ lock_grab(&ESFmapLock);
+
+ if (ESFmap.find(key) != ESFmap.end())
+ si = ESFmap[key];
+
+ lock_release(&ESFmapLock);
+ return si;
+ }
+