X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=RIC-E2-TERMINATION%2FmapWrapper.h;h=ffa0eb3e2f750dabfcbd42d7583893e18ba6dc0b;hb=refs%2Fchanges%2F26%2F4226%2F1;hp=fa997da503652caa9e27c851adb3b6f5546f8a2e;hpb=1a79bdfd453f4ae8e07074a4cc6669672c7ca2f7;p=ric-plt%2Fe2.git diff --git a/RIC-E2-TERMINATION/mapWrapper.h b/RIC-E2-TERMINATION/mapWrapper.h index fa997da..ffa0eb3 100644 --- a/RIC-E2-TERMINATION/mapWrapper.h +++ b/RIC-E2-TERMINATION/mapWrapper.h @@ -15,6 +15,12 @@ * limitations under the License. */ +/* + * This source code is part of the near-RT RIC (RAN Intelligent Controller) + * platform project (RICP). + */ + + // // Created by adi ENZEL on 8/28/19. // @@ -29,15 +35,10 @@ #include #include -using namespace std; - class mapWrapper { public: void *find(char *key) { - shared_lock read(fence); - if (mdclog_level_get() >= MDCLOG_DEBUG) { - - } + std::shared_lock read(fence); auto entry = keyMap.find(key); if (entry == keyMap.end()) { return nullptr; @@ -46,32 +47,30 @@ public: } void setkey(char *key, void *val) { - unique_lock write(fence); + std::unique_lock write(fence); keyMap[key] = val; } void *erase(char *key) { - unique_lock write(fence); + std::unique_lock write(fence); return (void *)keyMap.erase(key); } void clear() { - unique_lock write(fence); + std::unique_lock write(fence); keyMap.clear(); } - void getKeys(vector &v) { - shared_lock read(fence); + void getKeys(std::vector &v) { + std::shared_lock read(fence); for (auto const &e : keyMap) { v.emplace_back((char *)e.first.c_str()); } } - - private: - std::unordered_map keyMap; - shared_timed_mutex fence; + std::unordered_map keyMap; + std::shared_timed_mutex fence; }; #endif //E2_MAPWRAPPER_H