Home | History | Annotate | Download | only in vnc_server
      1 #pragma once
      2 
      3 /*
      4  * Copyright (C) 2017 The Android Open Source Project
      5  *
      6  * Licensed under the Apache License, Version 2.0 (the "License");
      7  * you may not use this file except in compliance with the License.
      8  * You may obtain a copy of the License at
      9  *
     10  *      http://www.apache.org/licenses/LICENSE-2.0
     11  *
     12  * Unless required by applicable law or agreed to in writing, software
     13  * distributed under the License is distributed on an "AS IS" BASIS,
     14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     15  * See the License for the specific language governing permissions and
     16  * limitations under the License.
     17  */
     18 
     19 #include "vnc_utils.h"
     20 
     21 #include <map>
     22 #include <mutex>
     23 
     24 #include "common/vsoc/lib/input_events_region_view.h"
     25 
     26 namespace cvd {
     27 namespace vnc {
     28 
     29 class VirtualInputs {
     30  public:
     31   VirtualInputs();
     32 
     33   void GenerateKeyPressEvent(int code, bool down);
     34   void PressPowerButton(bool down);
     35   void HandlePointerEvent(bool touch_down, int x, int y);
     36 
     37  private:
     38   vsoc::input_events::InputEventsRegionView* input_events_region_view_{};
     39   std::map<uint32_t, uint32_t> keymapping_;
     40 };
     41 
     42 }  // namespace vnc
     43 }  // namespace cvd
     44