-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathEventTransport.h
61 lines (48 loc) · 1.6 KB
/
EventTransport.h
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
/*ckwg +5
* Copyright 2010 by Kitware, Inc. All Rights Reserved. Please refer to
* KITWARE_LICENSE.TXT for licensing information, or contact General Counsel,
* Kitware, Inc., 28 Corporate Drive, Clifton Park, NY 12065.
*/
#ifndef _RIGHT_TRACK_EVENT_TRANSPORT_H_
#define _RIGHT_TRACK_EVENT_TRANSPORT_H_
#include "EventRecords.h"
namespace RightTrack {
namespace Internal {
class EventTransportReader;
// ----------------------------------------------------------------
/** Event transport base class.
*
* This class defines the interface to the event transport
* component. Transport objects are responsible for getting the event
* stream to the appropriate backing store. And as such, they must
* implement this interface.
*
* Data format conversions and data martialing is the responsibility
* of a concrete EventTransport class.
*/
class EventTransport
{
public:
EventTransport() { }
virtual ~EventTransport() { }
virtual int Write(EventDefinition & msg) = 0;
virtual int Write(EventStart & msg) = 0;
virtual int Write(EventEnd & msg) = 0;
virtual int Write(EventText & msg) = 0;
virtual int Write(ContextDefinition & msg) = 0;
virtual int Write(ContextPush & msg) = 0;
virtual int Write(ContextPop & msg) = 0;
virtual int ReadEvents(vcl_string const& resource,
EventTransportReader & reader) = 0;
}; // end class EventTransport
} // end namespace
} // end namespace
#endif /* _RIGHT_TRACK_EVENT_TRANSPORT_H_ */
// Local Variables:
// mode: c++
// fill-column: 70
// c-tab-width: 2
// c-basic-offset: 2
// c-basic-indent: 2
// c-indent-tabs-mode: nil
// end: