MCPcopy Create free account
hub / github.com/comaps/comaps / IsGreater

Method IsGreater

libs/drape/overlay_tree.cpp:36–63  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

34 bool operator()(ref_ptr<OverlayHandle> const & l, ref_ptr<OverlayHandle> const & r) const { return IsGreater(l, r); }
35
36 bool IsGreater(ref_ptr<OverlayHandle> const & l, ref_ptr<OverlayHandle> const & r) const
37 {
38 bool const displayFlagLeft = ((!m_enableMask || l->IsSpecialLayerOverlay()) ? true : l->GetDisplayFlag());
39 bool const displayFlagRight = ((!m_enableMask || r->IsSpecialLayerOverlay()) ? true : r->GetDisplayFlag());
40 if (displayFlagLeft > displayFlagRight)
41 return true;
42
43 if (displayFlagLeft == displayFlagRight)
44 {
45 uint64_t const priorityLeft = l->GetPriority();
46 uint64_t const priorityRight = r->GetPriority();
47 if (priorityLeft > priorityRight)
48 return true;
49
50 if (priorityLeft == priorityRight)
51 {
52 auto const & hashLeft = l->GetOverlayID();
53 auto const & hashRight = r->GetOverlayID();
54
55 if (hashLeft > hashRight)
56 return true;
57
58 if (hashLeft == hashRight)
59 return l.get() > r.get();
60 }
61 }
62 return false;
63 }
64
65 bool IsEqual(ref_ptr<OverlayHandle> const & l, ref_ptr<OverlayHandle> const & r) const
66 {

Callers 1

InsertHandleMethod · 0.80

Calls 4

IsSpecialLayerOverlayMethod · 0.80
GetDisplayFlagMethod · 0.80
getMethod · 0.65
GetPriorityMethod · 0.45

Tested by

no test coverage detected