Panda3D
Loading...
Searching...
No Matches
pointerEvent.h
Go to the documentation of this file.
1/**
2 * PANDA 3D SOFTWARE
3 * Copyright (c) Carnegie Mellon University. All rights reserved.
4 *
5 * All use of this software is subject to the terms of the revised BSD
6 * license. You should have received a copy of this license along
7 * with this source code in a file named "LICENSE."
8 *
9 * @file pointerEvent.h
10 * @author jyelon
11 * @date 2007-09-20
12 */
13
14#ifndef POINTEREVENT_H
15#define POINTEREVENT_H
16
17#include "pandabase.h"
18#include "pointerData.h"
19
20class Datagram;
22
23/**
24 * Records a pointer movement event.
25 */
26class EXPCL_PANDA_EVENT PointerEvent {
27public:
28 PointerEvent() = default;
29
30 INLINE bool operator == (const PointerEvent &other) const;
31 INLINE bool operator != (const PointerEvent &other) const;
32 INLINE bool operator < (const PointerEvent &other) const;
33
34 void output(std::ostream &out) const;
35
36 void write_datagram(Datagram &dg) const;
37 void read_datagram(DatagramIterator &scan);
38
39public:
40 bool _in_window = false;
41 int _id = 0;
42 PointerType _type = PointerType::unknown;
43 double _xpos = 0.0;
44 double _ypos = 0.0;
45 double _dx = 0.0;
46 double _dy = 0.0;
47 double _length = 0.0;
48 double _direction = 0.0;
49 double _pressure = 0.0;
50 double _rotation = 0.0;
51 int _sequence = 0;
52 double _time = 0.0;
53};
54
55INLINE std::ostream &operator << (std::ostream &out, const PointerEvent &pe) {
56 pe.output(out);
57 return out;
58}
59
60#include "pointerEvent.I"
61
62#endif
A class to retrieve the individual data elements previously stored in a Datagram.
An ordered list of data elements, formatted in memory for transmission over a socket or writing to a ...
Definition datagram.h:38
Records a pointer movement event.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PointerType
Contains the types of pointer device.
Definition pointerData.h:25
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.