Crazyradio.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <stdint.h>
4 #include <vector>
5 
6 #include "ITransport.h"
7 #include "USBDevice.h"
8 
9 class Crazyradio
10  : public ITransport
11  , public USBDevice
12 {
13 public:
14  enum Datarate
15  {
19  };
20 
21  enum Power
22  {
27  };
28 
29 public:
30  Crazyradio(
31  uint32_t devid);
32 
33  virtual ~Crazyradio();
34 
35  static uint32_t numDevices();
36 
37  float version() const {
38  return m_version;
39  }
40 
41  void setChannel(
42  uint8_t channel);
43 
44  uint8_t getChannel() const {
45  return m_channel;
46  }
47 
48  void setAddress(
49  uint64_t address);
50 
51  uint64_t getAddress() const {
52  return m_address;
53  }
54 
55  void setDatarate(
56  Datarate datarate);
57 
59  return m_datarate;
60  }
61 
62  void setPower(
63  Power power);
64 
65  void setArc(
66  uint8_t arc);
67 
68  void setArdTime(
69  uint8_t us);
70 
71  void setArdBytes(
72  uint8_t nbytes);
73 
74  void setAckEnable(
75  bool enable);
76 
77  bool getAckEnable() const {
78  return m_ackEnable;
79  }
80 
81  void setContCarrier(
82  bool active);
83 
84  virtual void sendPacket(
85  const uint8_t* data,
86  uint32_t length,
88 
89  virtual void sendPacketNoAck(
90  const uint8_t* data,
91  uint32_t length);
92 
93 
94  virtual void send2PacketsNoAck(
95  const uint8_t* data,
96  uint32_t totalLength);
97 
98 private:
99  uint8_t m_channel;
100  uint64_t m_address;
103 };
bool getAckEnable() const
Definition: Crazyradio.h:77
uint8_t m_channel
Definition: Crazyradio.h:99
void setArdTime(uint8_t us)
Definition: Crazyradio.cpp:100
uint8_t channel
Definition: crtp.h:33
void setAckEnable(bool enable)
Definition: Crazyradio.cpp:125
void setPower(Power power)
Definition: Crazyradio.cpp:90
virtual void sendPacket(const uint8_t *data, uint32_t length, ITransport::Ack &result)
Definition: Crazyradio.cpp:136
virtual ~Crazyradio()
Definition: Crazyradio.cpp:42
uint8_t length
Definition: crtp.h:22
Crazyradio(uint32_t devid)
Definition: Crazyradio.cpp:22
void setAddress(uint64_t address)
Definition: Crazyradio.cpp:57
uint16_t address
uint64_t m_address
Definition: Crazyradio.h:100
uint8_t data[29]
Definition: crtp.h:363
uint8_t result
Definition: crtp.h:440
void setContCarrier(bool active)
Definition: Crazyradio.cpp:131
bool m_ackEnable
Definition: Crazyradio.h:102
virtual void sendPacketNoAck(const uint8_t *data, uint32_t length)
Definition: Crazyradio.cpp:197
uint64_t getAddress() const
Definition: Crazyradio.h:51
Datarate getDatarate() const
Definition: Crazyradio.h:58
uint8_t getChannel() const
Definition: Crazyradio.h:44
void setArc(uint8_t arc)
Definition: Crazyradio.cpp:95
void setArdBytes(uint8_t nbytes)
Definition: Crazyradio.cpp:120
void setDatarate(Datarate datarate)
Definition: Crazyradio.cpp:84
Datarate m_datarate
Definition: Crazyradio.h:101
static uint32_t numDevices()
Definition: Crazyradio.cpp:46
float m_version
Definition: USBDevice.h:36
float version() const
Definition: Crazyradio.h:37
virtual void send2PacketsNoAck(const uint8_t *data, uint32_t totalLength)
Definition: Crazyradio.cpp:233
void setChannel(uint8_t channel)
Definition: Crazyradio.cpp:51


crazyflie_cpp
Author(s): Wolfgang Hoenig
autogenerated on Mon Sep 28 2020 03:40:10