File indexing completed on 2025-08-06 08:17:38
0001
0002
0003 #ifndef GLOBALVERTEX_MBDVERTEXMAPV1_H
0004 #define GLOBALVERTEX_MBDVERTEXMAPV1_H
0005
0006 #include "MbdVertexMap.h"
0007
0008 #include "MbdVertex.h"
0009
0010 #include <cstddef> // for size_t
0011 #include <iostream>
0012 #include <map>
0013
0014 class MbdVertexMapv1 : public MbdVertexMap
0015 {
0016 public:
0017 MbdVertexMapv1() = default;
0018 ~MbdVertexMapv1() override;
0019
0020 void identify(std::ostream& os = std::cout) const override;
0021 void Reset() override { clear(); }
0022 int isValid() const override { return 1; }
0023
0024 bool empty() const override { return _map.empty(); }
0025 size_t size() const override { return _map.size(); }
0026 size_t count(unsigned int idkey) const override { return _map.count(idkey); }
0027 void clear() override;
0028
0029 const MbdVertex* get(unsigned int idkey) const override;
0030 MbdVertex* get(unsigned int idkey) override;
0031 MbdVertex* insert(MbdVertex* vertex) override;
0032 size_t erase(unsigned int idkey) override
0033 {
0034 delete _map[idkey];
0035 return _map.erase(idkey);
0036 }
0037
0038 ConstIter begin() const override { return _map.begin(); }
0039 ConstIter find(unsigned int idkey) const override { return _map.find(idkey); }
0040 ConstIter end() const override { return _map.end(); }
0041
0042 Iter begin() override { return _map.begin(); }
0043 Iter find(unsigned int idkey) override { return _map.find(idkey); }
0044 Iter end() override { return _map.end(); }
0045
0046 private:
0047 std::map<unsigned int, MbdVertex*> _map;
0048
0049 ClassDefOverride(MbdVertexMapv1, 1);
0050 };
0051
0052 #endif