gnss-sdr/drivers/gr-gn3s/include/gn3s.h

60 lines
2.5 KiB
C

/*----------------------------------------------------------------------------------------------*/
/*! \file gn3s.h
//
// FILENAME: gn3s.h
//
// DESCRIPTION: Defines the GN3S class.
//
// DEVELOPERS: Gregory W. Heckler (2003-2009)
//
// LICENSE TERMS: Copyright (c) Gregory W. Heckler 2009
//
// This file is part of the GPS Software Defined Radio (GPS-SDR)
//
// The GPS-SDR is free software; you can redistribute it and/or modify it under the terms of the
// GNU General Public License as published by the Free Software Foundation; either version 2 of
// the License, or (at your option) any later version. The GPS-SDR is distributed in the hope that
// it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
// more details.
//
// Note: Comments within this file follow a syntax that is compatible with
// DOXYGEN and are utilized for automated document extraction
//
// Reference:
*/
/*----------------------------------------------------------------------------------------------*/
#ifndef GN3S_H_
#define GN3S_H_
#define MODE_NARROW_16_I 32 /* SF:16.368MHz, IF:4.092MHz, 2bit, I */
#define MODE_NARROW_8_IQ 36 /* SF: 8.184MHz, IF: 0MHz, 4bit, IQ */
#define MODE_NARROW_5_I 38 /* SF: 5.456MHz, IF:4.092MHz, 2bit, I */
#define MODE_NARROW_4_IQ 42 /* SF: 4.092MHz, IF: 0MHz, 4bit, IQ */
#define MODE_WIDE_16_I 132 /* SF:16.368MHz, IF:4.092MHz, 2bit, I */
#define MODE_WIDE_8_IQ 136 /* SF: 8.184MHz, IF: 0MHz, 4bit, IQ */
#define MODE_WIDE_5_I 138 /* SF: 5.456MHz, IF:4.092MHz, 2bit, I */
#define MODE_WIDE_4_IQ 142 /* SF: 4.092MHz, IF: 0MHz, 4bit, IQ */
#define GN3S_MODE MODE_NARROW_16_I /* GN3S operating mode */
#define GN3S_DECIMATE 1 /* decimate mode */
#define GN3S_PACK 1 /* pack mode */
#define GN3S_BUFFSIZE 32*512 /* buffer size: 16 kB */
/* global functions */
extern int gn3s_init(void);
extern void gn3s_quit(void);
extern void gn3s_exp_v2(unsigned char *buf, int n, char *expbuf);
extern void gn3s_getbuff_v2(uint64_t buffloc, int n, int dtype, char *expbuf);
extern void gn3s_exp_v3(unsigned char *buf, int n, int i_mode, char *expbuf);
extern void gn3s_getbuff_v3(uint64_t buffloc, int n, int dtype, char *expbuf);
extern int gn3s_pushtomembuf(void);
extern void fgn3s_pushtomembuf(void);
extern void fgn3s_getbuff(uint64_t buffloc, int n, int dtype, char *expbuf);
#endif