17 #include <QtCore/QHash> 18 #include <QtCore/QScopedPointer> 26 class HardwareAbstractionInterface;
41 class MspCommunicatorInterface;
54 class CameraDeviceInterface;
55 class I2cCommunicator;
69 Brick(
const QString &systemConfig,
const QString &modelConfig,
const QString &mediaPath);
77 ,
const QString &modelConfig,
const QString &mediaPath);
81 void reset()
override;
85 QString configVersion()
const override;
88 void configure(
const QString &portName,
const QString &deviceName)
override;
90 void playSound(
const QString &soundFileName)
override;
92 void playTone(
int hzFreq,
int msDuration)
override;
94 void say(
const QString &text)
override;
106 QStringList pwmCapturePorts()
const override;
110 QStringList encoderPorts()
const override;
124 QVector<uint8_t> getStillImage()
override;
146 void stopEventDevice(
const QString &deviceFile)
override;
150 ,
const QString &systemConfig
151 ,
const QString &modelConfig
152 ,
const QString &mediaPath);
155 void shutdownDevice(
const QString &port);
158 void createDevice(
const QString &port);
164 QScopedPointer<MspCommunicatorInterface> mMspCommunicator;
165 QScopedPointer<ModuleLoader> mModuleLoader;
167 QScopedPointer<VectorSensor> mAccelerometer;
168 QScopedPointer<GyroSensor> mGyroscope;
169 QScopedPointer<Battery> mBattery;
170 QScopedPointer<Keys> mKeys;
171 QScopedPointer<Display> mDisplay;
172 QScopedPointer<Led> mLed;
173 QScopedPointer<Gamepad> mGamepad;
174 QScopedPointer<TonePlayer> mTonePlayer;
175 QScopedPointer<CameraDeviceInterface> mCamera;
177 QHash<QString, ServoMotor *> mServoMotors;
178 QHash<QString, PwmCapture *> mPwmCaptures;
179 QHash<QString, PowerMotor *> mPowerMotors;
180 QHash<QString, AnalogSensor *> mAnalogSensors;
181 QHash<QString, Encoder *> mEncoders;
182 QHash<QString, DigitalSensor *> mDigitalSensors;
183 QHash<QString, RangeSensor *> mRangeSensors;
184 QHash<QString, LineSensor *> mLineSensors;
185 QHash<QString, ColorSensor *> mColorSensors;
186 QHash<QString, ObjectSensor *> mObjectSensors;
187 QHash<QString, SoundSensor *> mSoundSensors;
188 QHash<QString, Fifo *> mFifos;
189 QHash<QString, EventDeviceInterface *> mEventDevices;
190 QHash<uint16_t, I2cDeviceInterface *> mI2cDevices;
192 QString mPlayWavFileCommand;
193 QString mPlayMp3FileCommand;
Uses virtual line sensor to detect x coordinate of a center of an object that was in camera's field o...
Definition: lineSensorInterface.h:29
Class for work with i2c.
Definition: i2cDeviceInterface.h:26
static const int port
Definition: trikCommunicatorTest.cpp:24
Controls light-emitting diode on a brick.
Definition: ledInterface.h:26
Interface that represents linux FIFO file, which is commonly used by various sensors.
Definition: fifoInterface.h:26
Abstract motor. It is differently implemented by different motor types (like servo and power motors)...
Definition: motorInterface.h:26
Sensor that returns a vector.
Definition: vectorSensorInterface.h:29
Provides characteristics of PWM signal supplied to the port.
Definition: pwmCaptureInterface.h:27
Generic event device.
Definition: eventDeviceInterface.h:27
Provides battery voltage info.
Definition: batteryInterface.h:26
Encoder of power motor.
Definition: encoderInterface.h:26
#define TRIKCONTROL_EXPORT
Definition: declSpec.h:23
Definition: trikCommunicator.h:27
Uses virtual color sensor to detect dominant color in every cell of m * n grid of camera field of vie...
Definition: colorSensorInterface.h:27
Remote control of a robot via Android gamepad.
Definition: gamepadInterface.h:24
Abstract sensor, inherited by various sensor types.
Definition: sensorInterface.h:26
Class that returns raw and processed data from the gyroscope.
Definition: gyroSensorInterface.h:27
Provides ability to draw something on robot display.
Definition: displayInterface.h:28
Class representing TRIK controller board and devices installed on it, also provides access to periphe...
Definition: brick.h:60
Class for handling keys on a brick.
Definition: keysInterface.h:26
Type
Definition: motorInterface.h:31
Definition: brickFactory.h:21
Type
Definition: sensorInterface.h:31
Uses virtual sound sensor to detect angle of sound source.
Definition: soundSensorInterface.h:27
Controls marker.
Definition: markerInterface.h:27
Uses virtual line sensor to detect x coordinate of a center of an object that was in camera's field o...
Definition: objectSensorInterface.h:28
Interface representing TRIK controller board and devices installed on it, also provides access to per...
Definition: brickInterface.h:46
Hardware abstraction, provides devices that are used to communicate with robot hardware or emulate it...
Definition: hardwareAbstractionInterface.h:29