Welcome to mirror list, hosted at ThFree Co, Russian Federation.

message.hpp « drape_frontend - github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 24c647afa2bce366ff4aa4ee1788e7ebb3200a83 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
#pragma once

#include <string>

namespace df
{
class Message
{
public:
  enum class Type
  {
    Unknown,
    TileReadStarted,
    TileReadEnded,
    FinishReading,
    FinishTileRead,
    FlushTile,
    FlushOverlays,
    MapShapeReaded,
    OverlayMapShapeReaded,
    UpdateReadManager,
    InvalidateRect,
    InvalidateReadManagerRect,
    UpdateUserMarkGroup,
    ClearUserMarkGroup,
    ChangeUserMarkGroupVisibility,
    UpdateUserMarks,
    InvalidateUserMarks,
    FlushUserMarks,
    GuiLayerRecached,
    GuiRecache,
    GuiLayerLayout,
    MapShapesRecache,
    MapShapes,
    ChangeMyPositionMode,
    CompassInfo,
    GpsInfo,
    SelectObject,
    AddSubroute,
    RemoveSubroute,
    PrepareSubrouteArrows,
    CacheSubrouteArrows,
    FlushSubroute,
    FlushSubrouteArrows,
    FlushSubrouteMarkers,
    FollowRoute,
    DeactivateRouteFollowing,
    SetSubrouteVisibility,
    AddRoutePreviewSegment,
    RemoveRoutePreviewSegment,
    UpdateMapStyle,
    SwitchMapStyle,
    Invalidate,
    Allow3dMode,
    Allow3dBuildings,
    EnablePerspective,
    FlushCirclesPack,
    CacheCirclesPack,
    UpdateGpsTrackPoints,
    ClearGpsTrackPoints,
    ShowChoosePositionMark,
    SetKineticScrollEnabled,
    BlockTapEvents,
    SetTimeInBackground,
    SetAddNewPlaceMode,
    SetDisplacementMode,
    AllowAutoZoom,
    RequestSymbolsSize,
    RecoverContextDependentResources,
    SetVisibleViewport,
    EnableTraffic,
    FlushTrafficGeometry,
    RegenerateTraffic,
    UpdateTraffic,
    FlushTrafficData,
    ClearTrafficData,
    SetSimplifiedTrafficColors,
    DrapeApiAddLines,
    DrapeApiRemove,
    DrapeApiFlush,
    SetCustomFeatures,
    RemoveCustomFeatures,
    SetTrackedFeatures,
    SetPostprocessStaticTextures,
    SetPosteffectEnabled,
    RunFirstLaunchAnimation,
    UpdateMetalines,
    PostUserEvent,
    FinishTexturesInitialization,
    CleanupTextures,
    EnableUGCRendering,
    EnableDebugRectRendering,
    EnableTransitScheme,
    UpdateTransitScheme,
    ClearTransitSchemeData,
    ClearAllTransitSchemeData,
    RegenerateTransitScheme,
    FlushTransitScheme,
    ShowDebugInfo,
    NotifyRenderThread,
    NotifyGraphicsReady,
  };

  virtual ~Message() = default;
  virtual Type GetType() const { return Type::Unknown; }
  virtual bool IsGraphicsContextDependent() const { return false; }
  virtual bool ContainsRenderState() const { return false; }
};

enum class MessagePriority
{
  // This is standard priority. It must be used for majority of messages.
  // This priority guarantees order of messages processing.
  Normal,
  // This priority is used for system messages where order of processing
  // could be neglected, so it does not guarantee order of messages processing.
  // Also it must be used for messages which stop threads.
  High,
  // It can be used for the only system message (UpdateReadManagerMessage) and
  // must not be used anywhere else.
  UberHighSingleton,
  // This priority allows to process messages after any other messages in queue.
  Low
};

std::string DebugPrint(Message::Type msgType);
}  // namespace df