Crazyradio.h
Go to the documentation of this file.
00001 #pragma once
00002 
00003 #include <stdint.h>
00004 #include <vector>
00005 
00006 #include "ITransport.h"
00007 #include "USBDevice.h"
00008 
00009 class Crazyradio
00010   : public ITransport
00011   , public USBDevice
00012 {
00013 public:
00014     enum Datarate
00015     {
00016         Datarate_250KPS = 0,
00017         Datarate_1MPS   = 1,
00018         Datarate_2MPS   = 2,
00019     };
00020 
00021     enum Power
00022     {
00023         Power_M18DBM = 0,
00024         Power_M12DBM = 1,
00025         Power_M6DBM  = 2,
00026         Power_0DBM   = 3,
00027     };
00028 
00029 public:
00030     Crazyradio(
00031         uint32_t devid);
00032 
00033     virtual ~Crazyradio();
00034 
00035     static uint32_t numDevices();
00036 
00037     float version() const {
00038         return m_version;
00039     }
00040 
00041     void setChannel(
00042         uint8_t channel);
00043 
00044     uint8_t getChannel() const {
00045         return m_channel;
00046     }
00047 
00048     void setAddress(
00049         uint64_t address);
00050 
00051     uint64_t getAddress() const {
00052         return m_address;
00053     }
00054 
00055     void setDatarate(
00056         Datarate datarate);
00057 
00058     Datarate getDatarate() const {
00059         return m_datarate;
00060     }
00061 
00062     void setPower(
00063         Power power);
00064 
00065     void setArc(
00066         uint8_t arc);
00067 
00068     void setArdTime(
00069         uint8_t us);
00070 
00071     void setArdBytes(
00072         uint8_t nbytes);
00073 
00074     void setAckEnable(
00075         bool enable);
00076 
00077     void setContCarrier(
00078         bool active);
00079 
00080     virtual void sendPacket(
00081         const uint8_t* data,
00082         uint32_t length,
00083         ITransport::Ack& result);
00084 
00085     virtual void sendPacketNoAck(
00086         const uint8_t* data,
00087         uint32_t length);
00088 
00089 private:
00090     uint8_t m_channel;
00091     uint64_t m_address;
00092     Datarate m_datarate;
00093 };


crazyflie_cpp
Author(s): Wolfgang Hoenig
autogenerated on Sun Oct 8 2017 02:47:59