trikRuntime
fifoInterface.h
Go to the documentation of this file.
1 /* Copyright 2015 Yurii Litvinov and CyberTech Labs Ltd.
2  *
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  * http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License. */
14 
15 #pragma once
16 
17 #include <QtCore/QString>
18 #include <QtCore/QObject>
19 
20 namespace trikHal {
21 
23 class FifoInterface : public QObject
24 {
25  Q_OBJECT
26 
27 public:
30  virtual bool open() = 0;
31 
34  virtual bool close() = 0;
35 
37  virtual QString fileName() = 0;
38 
39 signals:
41  void newData(const QString &data);
42 
45  void readError();
46 };
47 
48 }
virtual bool open()=0
Opens FIFO file and starts listening for events.
virtual bool close()=0
Closes FIFO file and stops listening for events.
void readError()
Emitted when something is wrong with opened FIFO file and reading failed.
Definition: brickFactory.h:21
Abstraction of Linux FIFO used to receive events. To write to FIFO, use OutputDeviceFileInterface.
Definition: fifoInterface.h:23
virtual QString fileName()=0
Returns file name of a FIFO file.
void newData(const QString &data)
Emitted when new data is read from FIFO.