GNU Radio's BLUETOOTH Package
gr::bluetooth::classic_packet Class Referenceabstract

<+description of block+> More...

#include <packet.h>

Inheritance diagram for gr::bluetooth::classic_packet:
gr::bluetooth::packet gr::bluetooth::classic_packet_impl

Public Types

typedef std::shared_ptr< classic_packetsptr
Public Types inherited from gr::bluetooth::packet
enum  air_format { UNKNOWN = 0 , CLASSIC , LOW_ENERGY , NUM_BTAF }
typedef std::shared_ptr< packetsptr

Public Member Functions

virtual int crc_check (int clock)=0
virtual bool decode_header ()=0
virtual void decode_payload ()=0
virtual void print ()=0
virtual char * tun_format ()=0
virtual uint32_t get_LAP ()=0
virtual uint8_t get_UAP ()=0
virtual void set_UAP (uint8_t UAP)=0
virtual void set_NAP (uint16_t NAP)=0
virtual uint32_t get_clock ()=0
virtual void set_clock (uint32_t clk6, bool have27)=0
virtual uint8_t try_clock (int clock)=0
virtual bool header_present ()=0
virtual uint32_t lap_from_fhs ()=0
virtual uint8_t uap_from_fhs ()=0
virtual uint16_t nap_from_fhs ()=0
virtual uint32_t clock_from_fhs ()=0
int get_channel ()
Public Member Functions inherited from gr::bluetooth::packet
 packet ()
 packet (char *stream, int length, double freq=0.0)
virtual ~packet ()
bool get_whitened ()
void set_whitened (bool whitened)
int get_payload_length ()
bool got_payload ()
int get_type ()
void decode ()

Static Public Member Functions

static sptr make (char *stream, int length)
 Return a shared_ptr to a new instance of gr::bluetooth::classic_packet.
static sptr make (char *stream, int length, uint32_t clkn, double freq)
static int sniff_ac (char *stream, int stream_length)
static uint8_t * lfsr (uint8_t *data, int length, int k, uint8_t *g)
static uint8_t * acgen (int LAP)
static bool unfec13 (char *input, char *output, int length)
static char * unfec23 (char *input, int length)
static bool check_ac (char *stream, int LAP)
static uint16_t crcgen (char *payload, int length, int UAP)
static int UAP_from_hec (uint16_t data, uint8_t hec)
Static Public Member Functions inherited from gr::bluetooth::packet
static int sniff_packet (char *stream, int stream_length, double freq, air_format &fmt)
static uint8_t reverse (char byte)
static void convert_to_grformat (uint8_t input, uint8_t *output)
static uint8_t air_to_host8 (char *air_order, int bits)
static uint16_t air_to_host16 (char *air_order, int bits)
static uint32_t air_to_host32 (char *air_order, int bits)
static void host_to_air (uint8_t host_order, char *air_order, int bits)

Public Attributes

uint32_t d_clkn

Static Public Attributes

static const int ID_THRESHOLD = 5
static const int SYMBOLS_PER_BASIC_RATE_ACCESS_CODE = 68
static const uint8_t INDICES [64]
static const uint8_t PREAMBLE_DISTANCE [32]
static const uint8_t BARKER_DISTANCE [128]
static const std::string TYPE_NAMES [16]
Static Public Attributes inherited from gr::bluetooth::packet
static const uint8_t WHITENING_DATA [127]

Detailed Description

<+description of block+>

Member Typedef Documentation

◆ sptr

Member Function Documentation

◆ acgen()

uint8_t * gr::bluetooth::classic_packet::acgen ( int LAP)
static

◆ check_ac()

bool gr::bluetooth::classic_packet::check_ac ( char * stream,
int LAP )
static

◆ clock_from_fhs()

virtual uint32_t gr::bluetooth::classic_packet::clock_from_fhs ( )
pure virtual

◆ crc_check()

virtual int gr::bluetooth::classic_packet::crc_check ( int clock)
pure virtual

◆ crcgen()

uint16_t gr::bluetooth::classic_packet::crcgen ( char * payload,
int length,
int UAP )
static

◆ decode_header()

virtual bool gr::bluetooth::classic_packet::decode_header ( )
pure virtual

◆ decode_payload()

virtual void gr::bluetooth::classic_packet::decode_payload ( )
pure virtual

◆ get_channel()

int gr::bluetooth::classic_packet::get_channel ( )
inlinevirtual

Implements gr::bluetooth::packet.

◆ get_clock()

virtual uint32_t gr::bluetooth::classic_packet::get_clock ( )
pure virtual

◆ get_LAP()

virtual uint32_t gr::bluetooth::classic_packet::get_LAP ( )
pure virtual

◆ get_UAP()

virtual uint8_t gr::bluetooth::classic_packet::get_UAP ( )
pure virtual

◆ header_present()

virtual bool gr::bluetooth::classic_packet::header_present ( )
pure virtual

◆ lap_from_fhs()

virtual uint32_t gr::bluetooth::classic_packet::lap_from_fhs ( )
pure virtual

◆ lfsr()

uint8_t * gr::bluetooth::classic_packet::lfsr ( uint8_t * data,
int length,
int k,
uint8_t * g )
static

◆ make() [1/2]

sptr gr::bluetooth::classic_packet::make ( char * stream,
int length )
static

Return a shared_ptr to a new instance of gr::bluetooth::classic_packet.

To avoid accidental use of raw pointers, gr::bluetooth::classic_packet's constructor is in a private implementation class. gr::bluetooth::classic_packet::make is the public interface for creating new instances.

◆ make() [2/2]

sptr gr::bluetooth::classic_packet::make ( char * stream,
int length,
uint32_t clkn,
double freq )
static

◆ nap_from_fhs()

virtual uint16_t gr::bluetooth::classic_packet::nap_from_fhs ( )
pure virtual

◆ print()

virtual void gr::bluetooth::classic_packet::print ( )
pure virtual

◆ set_clock()

virtual void gr::bluetooth::classic_packet::set_clock ( uint32_t clk6,
bool have27 )
pure virtual

◆ set_NAP()

virtual void gr::bluetooth::classic_packet::set_NAP ( uint16_t NAP)
pure virtual

◆ set_UAP()

virtual void gr::bluetooth::classic_packet::set_UAP ( uint8_t UAP)
pure virtual

◆ sniff_ac()

int gr::bluetooth::classic_packet::sniff_ac ( char * stream,
int stream_length )
static

◆ try_clock()

virtual uint8_t gr::bluetooth::classic_packet::try_clock ( int clock)
pure virtual

◆ tun_format()

virtual char * gr::bluetooth::classic_packet::tun_format ( )
pure virtual

◆ uap_from_fhs()

virtual uint8_t gr::bluetooth::classic_packet::uap_from_fhs ( )
pure virtual

◆ UAP_from_hec()

int gr::bluetooth::classic_packet::UAP_from_hec ( uint16_t data,
uint8_t hec )
static

◆ unfec13()

bool gr::bluetooth::classic_packet::unfec13 ( char * input,
char * output,
int length )
static

◆ unfec23()

char * gr::bluetooth::classic_packet::unfec23 ( char * input,
int length )
static

Member Data Documentation

◆ BARKER_DISTANCE

const uint8_t gr::bluetooth::classic_packet::BARKER_DISTANCE[128]
static

◆ d_clkn

uint32_t gr::bluetooth::classic_packet::d_clkn

◆ ID_THRESHOLD

const int gr::bluetooth::classic_packet::ID_THRESHOLD = 5
static

◆ INDICES

const uint8_t gr::bluetooth::classic_packet::INDICES[64]
static

◆ PREAMBLE_DISTANCE

const uint8_t gr::bluetooth::classic_packet::PREAMBLE_DISTANCE[32]
static

◆ SYMBOLS_PER_BASIC_RATE_ACCESS_CODE

const int gr::bluetooth::classic_packet::SYMBOLS_PER_BASIC_RATE_ACCESS_CODE = 68
static

◆ TYPE_NAMES

const std::string gr::bluetooth::classic_packet::TYPE_NAMES[16]
static

The documentation for this class was generated from the following file: