enhance version information, added API functions for version

distinguish between library version .. and program version

Signed-off-by: hayati ayguen <h_ayguen@web.de>
development
hayati ayguen 2019-07-28 00:00:34 +02:00
parent 3079457da2
commit 75f97e566d
7 changed files with 92 additions and 17 deletions

View File

@ -29,6 +29,12 @@ extern "C" {
#include <stddef.h>
#include <rtl-sdr_export.h>
#define RTLSDRLIB_VER_MAJOR 0
#define RTLSDRLIB_VER_MINOR 7
#define RTLSDRLIB_VER_ID "github.com/hayguen"
typedef struct rtlsdr_dev rtlsdr_dev_t;
RTLSDR_API uint32_t rtlsdr_get_device_count(void);
@ -247,7 +253,6 @@ RTLSDR_API int rtlsdr_set_tuner_bandwidth(rtlsdr_dev_t *dev, uint32_t bw );
*/
RTLSDR_API int rtlsdr_set_tuner_band_center(rtlsdr_dev_t *dev, int32_t if_band_center_freq );
/*!
* Get actual gain the device is configured to.
*
@ -510,6 +515,9 @@ RTLSDR_API const char * rtlsdr_get_opt_help(int longInfo);
*/
RTLSDR_API int rtlsdr_set_tuner_i2c_register(rtlsdr_dev_t *dev, unsigned i2c_register, unsigned mask, unsigned data);
/* TODO: uint8_t */
RTLSDR_API int rtlsdr_get_tuner_i2c_register(rtlsdr_dev_t *dev, unsigned char* data, int len);
/*!
* Exposes/permits hacking of Tuner-specific I2C registers: set and keep register for future
@ -523,6 +531,22 @@ RTLSDR_API int rtlsdr_set_tuner_i2c_register(rtlsdr_dev_t *dev, unsigned i2c_reg
RTLSDR_API int rtlsdr_set_tuner_i2c_override(rtlsdr_dev_t *dev, unsigned i2c_register, unsigned mask, unsigned data);
/*!
* request version id string to identify source of library
*
* \return pointer to C string, e.g. "github.com/librtlsdr" or "github.com/hayguen" or .. with build date
* string keeps owned by library
*/
RTLSDR_API const char * rtlsdr_get_ver_id();
/*!
* request version numbers of library
*
* \return major version in upper 16 bit, minor revision in lower 16 bit
*/
RTLSDR_API uint32_t rtlsdr_get_version();
#ifdef __cplusplus
}
#endif

View File

@ -3798,3 +3798,13 @@ int rtlsdr_set_opt_string(rtlsdr_dev_t *dev, const char *opts, int verbose)
return retAll;
}
const char * rtlsdr_get_ver_id() {
return RTLSDRLIB_VER_ID " (" __DATE__ ")";
}
uint32_t rtlsdr_get_version() {
return ((uint32_t)RTLSDRLIB_VER_MAJOR << 16 ) | ((uint32_t)RTLSDRLIB_VER_MINOR );
}

View File

@ -0,0 +1,8 @@
#ifndef __RTL_APP_VER_H
#define __RTL_APP_VER_H
#define APP_VER_MAJOR 0
#define APP_VER_MINOR 7
#define APP_VER_ID "github.com/hayguen"
#endif

View File

@ -85,6 +85,8 @@
#include "convenience/convenience.h"
#include "convenience/wavewrite.h"
#include "rtl_app_ver.h"
#define DEFAULT_SAMPLE_RATE 24000
#define DEFAULT_BUF_LENGTH (1 * 16384)
#define MAXIMUM_OVERSAMPLE 16
@ -249,8 +251,17 @@ struct cmd_state cmd;
void usage(void)
{
fprintf(stderr, "rtl_fm, a simple narrow band FM demodulator for RTL2832 based receivers\n");
fprintf(stderr, "rtl_fm version %u.%u %s (%s)\n",
APP_VER_MAJOR, APP_VER_MINOR,
APP_VER_ID, __DATE__ );
fprintf(stderr, "librtlsdr version %u.%u %s\n\n",
(unsigned)(rtlsdr_get_version() >> 16),
(unsigned)(rtlsdr_get_version() & 0xFFFFU),
rtlsdr_get_ver_id()
);
fprintf(stderr,
"rtl_fm, a simple narrow band FM demodulator for RTL2832 based DVB-T receivers\n\n"
"Use:\trtl_fm -f freq [-options] [filename]\n"
"\t-f frequency_to_tune_to [Hz]\n"
"\t use multiple -f for scanning (requires squelch)\n"

View File

@ -35,20 +35,32 @@
#include "convenience/convenience.h"
#include "convenience/wavewrite.h"
#include "rtl_app_ver.h"
#define DEFAULT_SAMPLE_RATE 2048000
#define DEFAULT_BANDWIDTH 0 /* automatic bandwidth */
#define DEFAULT_BUF_LENGTH (16 * 16384)
#define MINIMAL_BUF_LENGTH 512
#define MAXIMAL_BUF_LENGTH (256 * 16384)
static int do_exit = 0;
static uint32_t bytes_to_read = 0;
static rtlsdr_dev_t *dev = NULL;
void usage(void)
{
fprintf(stderr, "rtl_sdr, an I/Q recorder for RTL2832 based receivers\n");
fprintf(stderr, "rtl_sdr version %u.%u %s (%s)\n",
APP_VER_MAJOR, APP_VER_MINOR,
APP_VER_ID, __DATE__ );
fprintf(stderr, "librtlsdr version %u.%u %s\n\n",
(unsigned)(rtlsdr_get_version() >> 16),
(unsigned)(rtlsdr_get_version() & 0xFFFFU),
rtlsdr_get_ver_id()
);
fprintf(stderr,
"rtl_sdr, an I/Q recorder for RTL2832 based DVB-T receivers\n\n"
"Usage:\t -f frequency_to_tune_to [Hz]\n"
"\t[-s samplerate (default: 2048000 Hz)]\n"
"\t[-w tuner_bandwidth (default: automatic)]\n"

View File

@ -47,9 +47,7 @@
#include "rtl_tcp.h"
#include "convenience/convenience.h"
#define RTLTCP_VER_STRING "Version HA-0.7 from 2019-07-21\n"
#include "rtl_app_ver.h"
#ifdef _WIN32
#pragma comment(lib, "ws2_32.lib")
@ -99,8 +97,17 @@ static volatile int do_exit = 0;
void usage(void)
{
printf("rtl_tcp, an I/Q spectrum server for RTL2832 based DVB-T receivers\n\n"
"Usage:\t[-a listen address]\n"
fprintf(stderr, "rtl_tcp, an I/Q spectrum server for RTL2832 based receivers\n");
fprintf(stderr, "rtl_tcp version %u.%u %s (%s)\n",
APP_VER_MAJOR, APP_VER_MINOR,
APP_VER_ID, __DATE__ );
fprintf(stderr, "librtlsdr version %u.%u %s\n\n",
(unsigned)(rtlsdr_get_version() >> 16),
(unsigned)(rtlsdr_get_version() & 0xFFFFU),
rtlsdr_get_ver_id()
);
fprintf(stderr, "Usage:\t[-a listen address]\n"
"\t[-p listen port (default: 1234)]\n"
"\t[-I infrared sensor listen port (default: 0=none)]\n"
"\t[-W infrared sensor query wait interval usec (default: 10000)]\n"
@ -556,8 +563,6 @@ int main(int argc, char **argv)
struct sigaction sigact, sigign;
#endif
printf("rtl_tcp, an I/Q spectrum server for RTL2832 based receivers\n" RTLTCP_VER_STRING );
opt_str = "a:p:f:g:s:b:n:d:P:O:TI:W:l:w:D:v";
while ((opt = getopt(argc, argv, opt_str)) != -1) {
switch (opt) {

View File

@ -47,9 +47,7 @@
#include "rtl_tcp.h"
#include "convenience/convenience.h"
#define RTLTCP_VER_STRING "Version HA-0.7 from 2019-07-21\n"
#include "rtl_app_ver.h"
#ifdef _WIN32
#pragma comment(lib, "ws2_32.lib")
@ -100,8 +98,17 @@ static volatile int do_exit = 0;
void usage(void)
{
printf("rtl_udp, an I/Q spectrum server for RTL2832 based DVB-T receivers\n\n"
"Usage:\t[-a listen address]\n"
fprintf(stderr, "rtl_udp, an I/Q spectrum server for RTL2832 based receivers\n");
fprintf(stderr, "rtl_udp version %u.%u %s (%s)\n",
APP_VER_MAJOR, APP_VER_MINOR,
APP_VER_ID, __DATE__ );
fprintf(stderr, "librtlsdr version %u.%u %s\n\n",
(unsigned)(rtlsdr_get_version() >> 16),
(unsigned)(rtlsdr_get_version() & 0xFFFFU),
rtlsdr_get_ver_id()
);
fprintf(stderr, "Usage:\t[-a listen address]\n"
"\t[-p listen port (default: 1234)]\n"
"\t[-I infrared sensor listen port (default: 0=none)]\n"
"\t[-W infrared sensor query wait interval usec (default: 10000)]\n"
@ -560,8 +567,6 @@ int main(int argc, char **argv)
struct sigaction sigact, sigign;
#endif
printf("rtl_udp, an I/Q spectrum server for RTL2832 based receivers\n" RTLTCP_VER_STRING );
while ((opt = getopt(argc, argv, "a:p:I:W:f:g:s:b:l:n:d:P:uw:D:vT")) != -1) {
switch (opt) {
case 'd':