automotive-message-broker
0.14.803
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Groups
Pages
plugins
common
canobserver.h
1
/*
2
Copyright (C) 2012 Intel Corporation
3
4
This library is free software; you can redistribute it and/or
5
modify it under the terms of the GNU Lesser General Public
6
License as published by the Free Software Foundation; either
7
version 2.1 of the License, or (at your option) any later version.
8
9
This library is distributed in the hope that it will be useful,
10
but WITHOUT ANY WARRANTY; without even the implied warranty of
11
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
Lesser General Public License for more details.
13
14
You should have received a copy of the GNU Lesser General Public
15
License along with this library; if not, write to the Free Software
16
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17
*/
18
19
#ifndef CANOBSERVER_H
20
#define CANOBSERVER_H
21
27
#include <stdlib.h>
28
#include <linux/can.h>
29
30
#include "canframeinfo.h"
31
39
class
CANObserver
40
{
41
public
:
47
enum
CANError
{
48
GENERAL_ERROR = 0
49
};
50
51
virtual
~
CANObserver
(){}
/*LCOV_EXCL_LINE*/
57
virtual
void
errorOccured
(
CANObserver::CANError
error
) = 0;
/* socket error */
63
virtual
void
standardFrameReceived
(
const
can_frame& frame) = 0;
/* SFF was present */
69
virtual
void
extendedFrameReceived
(
const
can_frame& frame) = 0;
/* EFF was present */
75
virtual
void
errorFrameReceived
(
const
can_frame& frame) = 0;
/* error frame */
81
virtual
void
remoteTransmissionRequest
(
const
can_frame& frame) = 0;
/* remote transmission request (SFF/EFF is still present)*/
87
virtual
void
timeoutDetected
(
const
can_frame& frame) = 0;
/* timeout */
88
};
89
90
#endif // CANOBSERVER_H
91
Generated by
1.8.2