[Hamlib-commits] Hamlib -- Ham radio control libraries branch master updated. 04c00330a6265680c2a78
Library to control radio transceivers and receivers
Brought to you by:
n0nb
From: n0nb <n0...@us...> - 2025-07-24 03:28:12
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, master has been updated via 04c00330a6265680c2a78dbf88e9274eae1f02da (commit) via 82feea990e584d1648dd5567a6e3f0e2a693f6a3 (commit) via 98cc0b688e4f8cd0838d728d97a43e7a13d6c29c (commit) via 1eb645004a45bf84e1fb71dcad294081a551f83d (commit) via 605e961dbf46498284799cda6a991f47d810e66f (commit) via 30494a4a1f03db4b9cdab6e901e6461d160d22e7 (commit) via 947b2da28f1b9ca0e64a59acabdc49da2eb1d9fe (commit) via c49cd2312cbdd0f859642160fb3874eab9db107d (commit) via 133817bf146eca08ce8267793f31b14c47f90b08 (commit) via 9ede33de4f690fd70c830aae1465d8bc9070839f (commit) via 6cfaf03edd7c514c39b2620ae97763313169f14a (commit) from 79f8b1cde83cf35b1cd30e67ab8f26fd1137b650 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 04c00330a6265680c2a78dbf88e9274eae1f02da Author: Nate Bargmann <n0...@n0...> Date: Wed Jul 23 14:41:50 2025 -0500 Clean upp Doxygen comments in rotator.h When a comment block immediately preceeds the item, repeating the item type such as \def or \typedef is not required. They're only required when the comment is not immediately preceeding or Doxygen doesn't get the item correct. diff --git a/include/hamlib/rotator.h b/include/hamlib/rotator.h index ab79f5260..629e79022 100644 --- a/include/hamlib/rotator.h +++ b/include/hamlib/rotator.h @@ -32,9 +32,10 @@ */ /** - * \file rotator.h * \brief Hamlib rotator data structures. * + * \file rotator.h + * * This file contains the data structures and declarations for the Hamlib * rotator Application Programming Interface (API). * @@ -52,7 +53,6 @@ struct rot_state; /** - * \typedef typedef struct s_rot ROT * \brief Main rotator handle type definition. * * The #ROT handle is returned by rot_init() and is passed as a parameter to @@ -64,7 +64,6 @@ typedef struct s_rot ROT; /** - * \typedef typedef float elevation_t * \brief Type definition for elevation. * * The \a elevation_t type is used as parameter for the rot_set_position() and @@ -76,7 +75,6 @@ typedef float elevation_t; /** - * \typedef typedef float azimuth_t * \brief Type definition for azimuth. * * The \a azimuth_t type is used as parameter for the rot_set_position() and @@ -94,7 +92,6 @@ typedef float azimuth_t; /** - * \def ROT_RESET_ALL * \brief A macro that returns the flag for the \b reset operation. * * \sa rot_reset(), rot_reset_t @@ -103,7 +100,6 @@ typedef float azimuth_t; /** - * \typedef typedef int rot_reset_t * \brief Type definition for rotator reset. * * The \a rot_reset_t type is used as parameter for the rot_reset() API @@ -121,7 +117,7 @@ typedef enum { } rot_type_t; //! @cond Doxygen_Suppress -/* So far only used in ests/dumpcaps_rot.c. */ +/* So far only used in tests/dumpcaps_rot.c. */ #define ROT_TYPE_MASK (ROT_FLAG_AZIMUTH|ROT_FLAG_ELEVATION) //! @endcond @@ -142,7 +138,6 @@ typedef enum { /** - * \def ROT_MOVE_UP * \brief A macro that returns the flag for the \b UP direction. * * This macro defines the value of the \b UP direction which can be @@ -154,7 +149,6 @@ typedef enum { #define ROT_MOVE_UP (1<<1) /** - * \def ROT_MOVE_DOWN * \brief A macro that returns the flag for the \b DOWN direction. * * This macro defines the value of the \b DOWN direction which can be @@ -166,7 +160,6 @@ typedef enum { #define ROT_MOVE_DOWN (1<<2) /** - * \def ROT_MOVE_LEFT * \brief A macro that returns the flag for the \b LEFT direction. * * This macro defines the value of the \b LEFT direction which can be @@ -178,7 +171,6 @@ typedef enum { #define ROT_MOVE_LEFT (1<<3) /** - * \def ROT_MOVE_CCW * \brief A macro that returns the flag for the \b counterclockwise direction. * * This macro defines the value of the \b counterclockwise direction which @@ -191,7 +183,6 @@ typedef enum { #define ROT_MOVE_CCW ROT_MOVE_LEFT /** - * \def ROT_MOVE_RIGHT * \brief A macro that returns the flag for the \b RIGHT direction. * * This macro defines the value of the \b RIGHT direction which can be used @@ -203,7 +194,6 @@ typedef enum { #define ROT_MOVE_RIGHT (1<<4) /** - * \def ROT_MOVE_CW * \brief A macro that returns the flag for the \b clockwise direction. * * This macro defines the value of the \b clockwise direction which can be @@ -216,7 +206,6 @@ typedef enum { #define ROT_MOVE_CW ROT_MOVE_RIGHT /** - * \def ROT_MOVE_UP_LEFT * \brief A macro that returns the flag for the \b clockwise direction. * * This macro defines the value of the \b clockwise direction which can be @@ -231,7 +220,6 @@ typedef enum { #define ROT_MOVE_UP_LEFT (1<<5) /** - * \def ROT_MOVE_UP_CCW * \brief A macro that returns the flag for the \b clockwise direction. * * This macro defines the value of the \b clockwise direction which can be @@ -246,7 +234,6 @@ typedef enum { #define ROT_MOVE_UP_CCW ROT_MOVE_UP_LEFT /** - * \def ROT_MOVE_UP_RIGHT * \brief A macro that returns the flag for the \b clockwise direction. * * This macro defines the value of the \b clockwise direction which can be @@ -261,7 +248,6 @@ typedef enum { #define ROT_MOVE_UP_RIGHT (1<<6) /** - * \def ROT_MOVE_UP_CW * \brief A macro that returns the flag for the \b clockwise direction. * * This macro defines the value of the \b clockwise direction which can be @@ -276,7 +262,6 @@ typedef enum { #define ROT_MOVE_UP_CW ROT_MOVE_UP_RIGHT /** - * \def ROT_MOVE_DOWN_LEFT * \brief A macro that returns the flag for the \b clockwise direction. * * This macro defines the value of the \b clockwise direction which can be @@ -292,7 +277,6 @@ typedef enum { /** - * \def ROT_MOVE_DOWN_CCW * \brief A macro that returns the flag for the \b clockwise direction. * * This macro defines the value of the \b clockwise direction which can be @@ -307,7 +291,6 @@ typedef enum { #define ROT_MOVE_DOWN_CCW ROT_MOVE_DOWN_LEFT /** - * \def ROT_MOVE_DOWN_RIGHT * \brief A macro that returns the flag for the \b clockwise direction. * * This macro defines the value of the \b clockwise direction which can be @@ -322,7 +305,6 @@ typedef enum { #define ROT_MOVE_DOWN_RIGHT (1 << 8) /** - * \def ROT_MOVE_DOWN_CW * \brief A macro that returns the flag for the \b clockwise direction. * * This macro defines the value of the \b clockwise direction which can be @@ -453,7 +435,6 @@ enum rot_parm_e { */ /** - * \struct rot_caps * \brief Rotator capability data structure. * * The main idea of this structure is that it will be defined by the backend @@ -581,7 +562,7 @@ struct rot_caps { //! @endcond //---Start cut here--- -// Rotatot state definition moved to include/hamlib/rot_state.h +// Rotator state definition moved to include/hamlib/rot_state.h // Temporary include until 5.0 #ifndef NO_OLD_INCLUDES @@ -594,7 +575,6 @@ __BEGIN_DECLS #endif //---End cut here--- /** - * \struct s_rot * \brief Master rotator structure. * * This is the master data structure acting as the #ROT handle for the @@ -884,7 +864,6 @@ extern HAMLIB_EXPORT(void *) rot_data_pointer(ROT *rot, rig_ptrx_t idx); //! @endcond /** - * \def rot_debug * \brief Convenience macro for generating debugging messages. * * This is an alias of the rig_debug() function call and is used in the same commit 82feea990e584d1648dd5567a6e3f0e2a693f6a3 Author: Nate Bargmann <n0...@n0...> Date: Wed Jul 23 14:34:14 2025 -0500 Add Doxygen config statements for newer versions Newer versions of Doxygen (1.14 in Arch Linux) default HAVE_DOT and CALL_GRAPH to NO, although older versions also default the latter to NO as well. Document why DISTRIBUTE_GROUP_DOC was added. Removes a bit of redundancy. diff --git a/doc/hamlib.cfg.in b/doc/hamlib.cfg.in index 3105243de..67817ca4b 100644 --- a/doc/hamlib.cfg.in +++ b/doc/hamlib.cfg.in @@ -61,7 +61,11 @@ ENABLED_SECTIONS = "" PREDEFINED = DOXYGEN "DOC_HIDDEN" JAVADOC_AUTOBRIEF = NO OPTIMIZE_OUTPUT_FOR_C = YES +# Allow anonymous group for related macro definitions DISTRIBUTE_GROUP_DOC = YES +# Later versions default to NO +HAVE_DOT = YES +CALL_GRAPH = YES MAN_LINKS = NO MACRO_EXPANSION = YES commit 98cc0b688e4f8cd0838d728d97a43e7a13d6c29c Author: Nate Bargmann <n0...@n0...> Date: Tue Jul 22 21:01:23 2025 -0500 Update Doxygen comments for rot_state.h diff --git a/doc/Makefile.am b/doc/Makefile.am index 2047f1751..26e791e5a 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -6,11 +6,12 @@ dist_man_MANS = man1/ampctl.1 man1/ampctld.1 \ man7/hamlib.7 man7/hamlib-primer.7 man7/hamlib-utilities.7 SRCDOCLST = \ + ../include/hamlib/amp_state.h \ ../include/hamlib/amplifier.h \ ../include/hamlib/amplist.h \ - ../include/hamlib/amp_state.h \ ../include/hamlib/port.h \ ../include/hamlib/rig.h \ + ../include/hamlib/rot_state.h \ ../include/hamlib/rotator.h \ ../include/hamlib/rotlist.h \ ../src/amp_conf.c \ diff --git a/include/hamlib/rot_state.h b/include/hamlib/rot_state.h index 04d3a37db..84fd60b84 100644 --- a/include/hamlib/rot_state.h +++ b/include/hamlib/rot_state.h @@ -25,10 +25,26 @@ #define _ROT_STATE_H 1 __BEGIN_DECLS + +/** + * \addtogroup rotator + * @{ + */ + + +/** + * \brief Hamlib rotator data structures. + * + * \file rot_state.h + * + * This file contains the live data state structure of the rotator. + */ + /** - * \struct rot_state * \brief Rotator state structure * + * \struct rot_state + * * This structure contains live data, as well as a copy of capability fields * that may be updated, i.e. customized while the #ROT handle is instantiated. * @@ -72,8 +88,8 @@ struct rot_state { int current_speed; /*!< Current speed 1-100, to be used when no change to speed is requested. */ hamlib_port_t rotport; /*!< Rotator port (internal use). */ hamlib_port_t rotport2; /*!< 2nd Rotator port (internal use). */ - rig_ptr_t *pstrotator_handler_priv_data; - deferred_config_header_t config_queue; + rig_ptr_t *pstrotator_handler_priv_data; /*!< PstRotator private data. */ + deferred_config_header_t config_queue; /*!< Que for deferred processing. */ }; __END_DECLS @@ -81,6 +97,9 @@ __END_DECLS #if defined(IN_HAMLIB) #define ROTSTATE(r) (&(r)->state) #endif +/** Macro for application access to rot_state data structure. */ #define HAMLIB_ROTSTATE(r) ((struct rot_state *)rot_data_pointer(r, RIG_PTRX_ROTSTATE)) #endif /* _ROT_STATE_H */ + +/** @} */ commit 1eb645004a45bf84e1fb71dcad294081a551f83d Author: Nate Bargmann <n0...@n0...> Date: Tue Jul 22 18:17:19 2025 -0500 Ignore additional files from Doxygen processing diff --git a/doc/hamlib.cfg.in b/doc/hamlib.cfg.in index 23c8f3986..3105243de 100644 --- a/doc/hamlib.cfg.in +++ b/doc/hamlib.cfg.in @@ -32,7 +32,10 @@ INPUT = @top_srcdir@/doc/index.doxygen \ EXCLUDE = @top_srcdir@/include/hamlib/ampclass.h \ @top_srcdir@/include/hamlib/multicast.h \ + @top_srcdir@/include/hamlib/rigclass.h \ + @top_srcdir@/include/hamlib/rig_dll.h \ @top_srcdir@/include/hamlib/rotclass.h \ + @top_srcdir@/include/hamlib/winpthreads.h \ @top_srcdir@/src/amp_conf.h \ @top_srcdir@/src/multicast.c commit 605e961dbf46498284799cda6a991f47d810e66f Author: Nate Bargmann <n0...@n0...> Date: Tue Jul 22 17:54:20 2025 -0500 Update Doxygen comments for rotlist.h diff --git a/include/hamlib/rotlist.h b/include/hamlib/rotlist.h index e62b4b89b..567aa59e6 100644 --- a/include/hamlib/rotlist.h +++ b/include/hamlib/rotlist.h @@ -19,6 +19,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * */ +/* SPDX-License-Identifier: LGPL-2.1-or-later */ #ifndef _ROTLIST_H #define _ROTLIST_H 1 @@ -35,9 +36,10 @@ */ /** - * \file rotlist.h * \brief Hamlib rotator model definitions. * + * \file rotlist.h + * * This file contains rotator model definitions for the Hamlib rotator * Application Programming Interface (API). Each distinct rotator type has a * unique model number (ID) and is used by Hamlib to identify and distinguish @@ -49,13 +51,14 @@ * function can be used. * * The model number, or ID, is used to tell Hamlib which rotator the client - * wishes to use which is done with the rot_init() API call. + * wishes to use which is passed to the rot_init() API call. */ /** - * \def ROT_MODEL_NONE * \brief A macro that returns the model number for an unknown model. * + * \def ROT_MODEL_NONE + * * The none backend, as the name suggests, does nothing. It is mainly for * internal use. */ @@ -80,6 +83,22 @@ * The NETROTCTL backend allows use of the `rotctld` daemon through the normal * Hamlib API. */ +/** + * \brief A macro that returns the model number for the PSTROTATOR backend. + * + * \def ROT_MODEL_PSTROTATOR + * + * The PSTROTATOR backend allows Hamlib clients to access the rotators controlled + * by the PstRotator software by YO3DMU: https://www.qsl.net/yo3dmu/index_Page346.htm + */ +/** + * \brief A macro that returns the model number for the SATROTCTL backend. + * + * \def ROT_MODEL_SATROTCTL + * + * The SATROTCTL allows Hamlib clients to access the rotators controlled by + * the S.A.T hardware by CSN Tecnologies: http://csntechnologies.net/ + */ //! @cond Doxygen_Suppress #define ROT_DUMMY 0 #define ROT_BACKEND_DUMMY "dummy" @@ -316,7 +335,14 @@ * The GS232B_EL backend can be used with elevation rotators that support the * GS-232B protocol. */ - +/** + * \brief A macro that returns the model number of the GS23_AZ azimuth backend. + * + * \def ROT_MODEL_GS23_AZ + * + * The GS23_AZ backend can be used with azimuth rotators that support a + * generic version of the GS-232A protocol. + */ //! @cond Doxygen_Suppress #define ROT_GS232A 6 #define ROT_BACKEND_GS232A "gs232a" @@ -336,9 +362,13 @@ #define ROT_MODEL_GS23_AZ ROT_MAKE_MODEL(ROT_GS232A, 13) #define ROT_MODEL_AF6SA_WRC ROT_MAKE_MODEL(ROT_GS232A, 14) +// Add documentation when this model is implemented. +//! @cond Doxygen_Suppress #define ROT_ARRAYSOLUTIONS 7 #define ROT_BACKEND ARRAYSOLUTIONS "arraysolutions" #define ROT_MODEL_ARRAYSOLUTIONS_SAL_12_20_30 ROT_MAKE_MODEL(ROT_ARRAYSOLUTIONS, 1) +//! @endcond + /** * \brief A macro that returns the model number of the PCROTOR backend. * @@ -561,6 +591,15 @@ * The PROSISTEL_AZEL_COMBI_TRACK_AZEL backend can be used with rotators that * support the Prosistel combination azimuth and elevation protocol. */ +/** + * \brief A macro that returns the model number of the PROSISTEL_D_EL_CBOXAZ + * backend. + * + * \def ROT_MODEL_PROSISTEL_D_EL_CBOXAZ + * + * The PROSISTEL_D_EL_CBOXAZ backend can be used with the elevation rotator + * with Control Box D using azimuth logic. + */ //! @cond Doxygen_Suppress #define ROT_PROSISTEL 17 #define ROT_BACKEND_PROSISTEL "prosistel" @@ -642,9 +681,20 @@ //! @endcond #define ROT_MODEL_RADANT ROT_MAKE_MODEL(ROT_RADANT, 1) - +/** + * \brief A macro that returns the model number of the ANDROIDSENSOR backend. + * + * \def ROT_MODEL_ANDROIDSENSOR + * + * The androidsensor rotator is not a real rotator, it uses the accelerometer + * sensor and magnetic field sensor of the cell phone or tablet to perform + * attitude determination for your antenna and the phone tied to it. Now you + * can wave your antenna to find radio signals. + */ +//! @cond Doxygen_Suppress #define ROT_ANDROIDSENSOR 23 #define ROT_BACKEND_ANDROIDSENSOR "androidsensor" +//! @endcond #define ROT_MODEL_ANDROIDSENSOR ROT_MAKE_MODEL(ROT_ANDROIDSENSOR, 1) /** commit 30494a4a1f03db4b9cdab6e901e6461d160d22e7 Author: Nate Bargmann <n0...@n0...> Date: Tue Jul 22 16:13:38 2025 -0500 Update Dozygen comments for amplist.h diff --git a/include/hamlib/amplist.h b/include/hamlib/amplist.h index 4122062c8..4539b6d2b 100644 --- a/include/hamlib/amplist.h +++ b/include/hamlib/amplist.h @@ -20,6 +20,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * */ +/* SPDX-License-Identifier: LGPL-2.1-or-later */ #ifndef _AMPLIST_H #define _AMPLIST_H 1 @@ -51,7 +52,7 @@ * foreach_opened_amp() API function can be used. * * The model number, or ID, is used to tell Hamlib which amplifier the client - * wishes to use which is done with the amp_init() API call. + * wishes to use which is passed to the amp_init() API call. */ @@ -107,20 +108,34 @@ #define AMP_MODEL_ELECRAFT_KPA1500 AMP_MAKE_MODEL(AMP_ELECRAFT, 1) //#define AMP_MODEL_ELECRAFT_KPA500 AMP_MAKE_MODEL(AMP_ELECRAFT, 2) +/** + * \brief A macro that returns the model number of the DX1200 backend. + * + * \def AMP_MODEL_GEMINI_DX1200 + * + * The Gemini DX1200 covers 160 trhough 4 meters. + */ +//! @cond Doxygen_Suppress #define AMP_GEMINI 3 #define AMP_BACKEND_GEMINI "gemini" +//! @endcond #define AMP_MODEL_GEMINI_DX1200 AMP_MAKE_MODEL(AMP_GEMINI, 1) +/** + * \brief A macro that returns the model number of the FA backend. + * + * \def AMP_MODEL_EXPERT_FA + * + * The Expert FA series of amplifiers is supported by this backend. + */ +//! @cond Doxygen_Suppress #define AMP_EXPERT 4 #define AMP_BACKEND_EXPERT "expert" +//! @endcond #define AMP_MODEL_EXPERT_FA AMP_MAKE_MODEL(AMP_EXPERT, 1) -/** - * \brief Convenience type definition for an amplifier model. - * - * \typedef typedef int amp_model_t - */ +/** Convenience type definition for an amplifier model. */ typedef int amp_model_t; commit 947b2da28f1b9ca0e64a59acabdc49da2eb1d9fe Author: Nate Bargmann <n0...@n0...> Date: Tue Jul 22 15:25:38 2025 -0500 Update Doxygen comments in amp_state.h diff --git a/include/hamlib/amp_state.h b/include/hamlib/amp_state.h index 03ff8902c..d138ad141 100644 --- a/include/hamlib/amp_state.h +++ b/include/hamlib/amp_state.h @@ -61,7 +61,7 @@ struct amp_state * non overridable fields, internal use */ //---Start cut here--- - hamlib_port_t_deprecated ampport_deprecated; /*!< Amplifier port (internal use). Deprecated */ + hamlib_port_t_deprecated ampport_deprecated; /*!< \deprecated Amplifier port (internal use). */ //---End cut here--- int comm_state; /*!< Comm port state, opened/closed. */ @@ -79,6 +79,8 @@ struct amp_state #if defined(IN_HAMLIB) #define AMPSTATE(a) (&(a)->state) #endif + +/** Macro for application access to amp_state data structure. */ #define HAMLIB_AMPSTATE(a) ((struct amp_state *)amp_data_pointer(a, RIG_PTRX_AMPSTATE)) __END_DECLS commit c49cd2312cbdd0f859642160fb3874eab9db107d Author: Nate Bargmann <n0...@n0...> Date: Tue Jul 22 13:38:14 2025 -0500 Add Doxygen support to port.h diff --git a/doc/Makefile.am b/doc/Makefile.am index 257b1112b..2047f1751 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -9,6 +9,7 @@ SRCDOCLST = \ ../include/hamlib/amplifier.h \ ../include/hamlib/amplist.h \ ../include/hamlib/amp_state.h \ + ../include/hamlib/port.h \ ../include/hamlib/rig.h \ ../include/hamlib/rotator.h \ ../include/hamlib/rotlist.h \ diff --git a/doc/hamlib.cfg.in b/doc/hamlib.cfg.in index 1799b946e..23c8f3986 100644 --- a/doc/hamlib.cfg.in +++ b/doc/hamlib.cfg.in @@ -58,6 +58,7 @@ ENABLED_SECTIONS = "" PREDEFINED = DOXYGEN "DOC_HIDDEN" JAVADOC_AUTOBRIEF = NO OPTIMIZE_OUTPUT_FOR_C = YES +DISTRIBUTE_GROUP_DOC = YES MAN_LINKS = NO MACRO_EXPANSION = YES diff --git a/doc/index.doxygen b/doc/index.doxygen index ee8eb8a66..dfa428b1f 100644 --- a/doc/index.doxygen +++ b/doc/index.doxygen @@ -195,5 +195,6 @@ GNU/Linux. * \defgroup rot_internal Rotator Internal API * \defgroup amplifier Amplifier API * \defgroup amp_internal Amplifier Internal API + * \defgroup port Port data structure for accessing devices * \defgroup utilities Utility Routines API */ diff --git a/include/hamlib/port.h b/include/hamlib/port.h index 59af611cd..f072cb893 100644 --- a/include/hamlib/port.h +++ b/include/hamlib/port.h @@ -24,23 +24,40 @@ #ifndef _HL_PORT_H #define _HL_PORT_H 1 + __BEGIN_DECLS + +/** + * \addtogroup port + * @{ + */ + +/** + * \brief Hamlib port data structures. + * + * \file port.h + * + * This file contains the data structures and declarations for the Hamlib + * port Application Programming Interface (API). + */ + /** * \brief Port definition * * Of course, looks like OO painstakingly programmed in C, sigh. + * + * \warning + * DO NOT CHANGE THIS STRUCTURE AT ALL UNTIL 5.0. + * Right now it is static inside the rig structure. + * 5.0 will change it to a pointer which can then be added to. + * At that point only add to the end of the structure. */ -//! @cond Doxygen_Suppress -// DO NOT CHANGE THIS STRUCTURE ALL UNTIL 5.0 -// Right now it is static inside rig structure -// 5.0 will change it to a pointer which can then be added to -// At that point only add to the end of the structure typedef struct hamlib_port { union { - rig_port_t rig; /*!< Communication port type */ - ptt_type_t ptt; /*!< PTT port type */ - dcd_type_t dcd; /*!< DCD port type */ - } type; + rig_port_t rig; /*!< Communication port of #rig_port_e type. */ + ptt_type_t ptt; /*!< PTT port of #ptt_type_e type. */ + dcd_type_t dcd; /*!< DCD port of #dcd_type_e type. */ + } type; /*!< Type of port in use.*/ int fd; /*!< File descriptor */ void *handle; /*!< handle for USB */ @@ -109,14 +126,20 @@ typedef struct hamlib_port { } hamlib_port_t; -// DO NOT CHANGE THIS STRUCTURE AT ALL -// Will be removed in 5.0 +/** + * \deprecated + * This structure will be removed in 5.0 and should not be used in new code. + * + * \warning + * DO NOT CHANGE THIS STRUCTURE AT ALL! + * Will be removed in 5.0. + */ typedef struct hamlib_port_deprecated { union { rig_port_t rig; /*!< Communication port type */ ptt_type_t ptt; /*!< PTT port type */ dcd_type_t dcd; /*!< DCD port type */ - } type; + } type; /*!< Type of port in use.*/ int fd; /*!< File descriptor */ void *handle; /*!< handle for USB */ @@ -171,21 +194,27 @@ typedef struct hamlib_port_deprecated { int client_port; /*!< client socket port for tcp connection */ RIG *rig; /*!< our parent RIG device */ } hamlib_port_t_deprecated; -//! @endcond #if !defined(__APPLE__) || !defined(__cplusplus) +//! @deprecated Obsolete port type typedef hamlib_port_t_deprecated port_t_deprecated; + +//! Short type name of the hamlib_port structure. typedef hamlib_port_t port_t; #endif -// Macros for app access to hamlib_port_t data +///@{ +/// Macro for application access to #hamlib_port_t data for this port type. #define HAMLIB_RIGPORT(r) ((hamlib_port_t *)rig_data_pointer((r), RIG_PTRX_RIGPORT)) #define HAMLIB_PTTPORT(r) ((hamlib_port_t *)rig_data_pointer((r), RIG_PTRX_PTTPORT)) #define HAMLIB_DCDPORT(r) ((hamlib_port_t *)rig_data_pointer((r), RIG_PTRX_DCDPORT)) #define HAMLIB_AMPPORT(a) ((hamlib_port_t *)amp_data_pointer((a), RIG_PTRX_AMPPORT)) #define HAMLIB_ROTPORT(r) ((hamlib_port_t *)rot_data_pointer((r), RIG_PTRX_ROTPORT)) #define HAMLIB_ROTPORT2(r) ((hamlib_port_t *)rot_data_pointer((r), RIG_PTRX_ROTPORT2)) +///@} __END_DECLS #endif /* _HL_PORT_H */ + +/** @} */ diff --git a/include/hamlib/rig.h b/include/hamlib/rig.h index 03ecb2656..416cb6210 100644 --- a/include/hamlib/rig.h +++ b/include/hamlib/rig.h @@ -668,11 +668,11 @@ typedef enum dcd_e { /** - * \brief DCD type + * \brief DCD (Data Carrier Detect) type * * \sa rig_get_dcd() */ -typedef enum { +typedef enum dcd_type_e { RIG_DCD_NONE = 0, /*!< No DCD available */ RIG_DCD_RIG, /*!< Rig has DCD status support, i.e. rig has get_dcd cap */ RIG_DCD_SERIAL_DSR, /*!< DCD status from serial DSR signal */ @@ -697,11 +697,13 @@ typedef enum { /** - * \brief PTT type + * \brief PTT (Push To Talk) type + * + * The method used to activate the transmitter of a radio. * * \sa rig_get_ptt() */ -typedef enum { +typedef enum ptt_type_e { RIG_PTT_NONE = 0, /*!< No PTT available */ RIG_PTT_RIG, /*!< Legacy PTT (CAT PTT) */ RIG_PTT_SERIAL_DTR, /*!< PTT control through serial DTR signal */ commit 133817bf146eca08ce8267793f31b14c47f90b08 Author: Nate Bargmann <n0...@n0...> Date: Thu Jul 17 14:09:34 2025 -0500 Add license header to multicast.[ch] diff --git a/include/hamlib/multicast.h b/include/hamlib/multicast.h index 1bc18475f..674521617 100644 --- a/include/hamlib/multicast.h +++ b/include/hamlib/multicast.h @@ -1,3 +1,29 @@ +/* + * Hamlib Interface - Multicast API header + * Copyright (c) 2023 by Mike Black, W9MDB + * + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + */ +/* SPDX-License-Identifier: LGPL-2.1-or-later */ + + +#ifndef MULTICAST_H +#define MULTICAST_H + //include <stdio.h> //#include <stdlib.h> //#include <string.h> @@ -17,9 +43,6 @@ #include <arpa/inet.h> #endif -#ifndef MULTICAST_H -#define MULTICAST_H - struct multicast_vfo { char *name; @@ -42,4 +65,5 @@ struct multicast_broadcast extern HAMLIB_EXPORT (int) multicast_init(RIG *rig, char *addr, int port); extern HAMLIB_EXPORT (int) multicast_send(RIG *rig, const char *msg, int msglen); extern HAMLIB_EXPORT (int) multicast_stop(RIG *rig); -#endif //MULTICAST_H + +#endif // MULTICAST_H diff --git a/src/multicast.c b/src/multicast.c index f222f072b..01fad1703 100644 --- a/src/multicast.c +++ b/src/multicast.c @@ -1,3 +1,27 @@ +/* + * Hamlib Interface - Multicast API header + * Copyright (c) 2023,2024 by Mike Black, W9MDB + * Copyright (c) 2024,2025 by George Baltz, N3GB + * + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + */ +/* SPDX-License-Identifier: LGPL-2.1-or-later */ + + #include <stdio.h> #include <stdlib.h> #include <string.h> commit 9ede33de4f690fd70c830aae1465d8bc9070839f Author: Nate Bargmann <n0...@n0...> Date: Thu Jul 17 14:08:44 2025 -0500 Exclude multicast.[ch] from Doxygen docs diff --git a/doc/hamlib.cfg.in b/doc/hamlib.cfg.in index df1157178..1799b946e 100644 --- a/doc/hamlib.cfg.in +++ b/doc/hamlib.cfg.in @@ -30,9 +30,11 @@ INPUT = @top_srcdir@/doc/index.doxygen \ @top_srcdir@/include/hamlib/ \ @top_srcdir@/src/ -EXCLUDE = @top_srcdir@/src/amp_conf.h \ - @top_srcdir@/include/hamlib/ampclass.h \ - @top_srcdir@/include/hamlib/rotclass.h +EXCLUDE = @top_srcdir@/include/hamlib/ampclass.h \ + @top_srcdir@/include/hamlib/multicast.h \ + @top_srcdir@/include/hamlib/rotclass.h \ + @top_srcdir@/src/amp_conf.h \ + @top_srcdir@/src/multicast.c INCLUDE_PATH = @top_srcdir@/include commit 6cfaf03edd7c514c39b2620ae97763313169f14a Author: Nate Bargmann <n0...@n0...> Date: Thu Jul 17 13:21:39 2025 -0500 Add amp_state.h to Doxygen docs diff --git a/doc/Makefile.am b/doc/Makefile.am index 85a956fa7..257b1112b 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -8,6 +8,7 @@ dist_man_MANS = man1/ampctl.1 man1/ampctld.1 \ SRCDOCLST = \ ../include/hamlib/amplifier.h \ ../include/hamlib/amplist.h \ + ../include/hamlib/amp_state.h \ ../include/hamlib/rig.h \ ../include/hamlib/rotator.h \ ../include/hamlib/rotlist.h \ diff --git a/include/hamlib/amp_state.h b/include/hamlib/amp_state.h index c9b5253d1..03ff8902c 100644 --- a/include/hamlib/amp_state.h +++ b/include/hamlib/amp_state.h @@ -24,6 +24,21 @@ #ifndef _AMP_STATE_H #define _AMP_STATE_H 1 +/** + * \addtogroup amplifier + * @{ + */ + + +/** + * \brief Hamlib amplifier state structure. + * + * \file amp_state.h + * + * This file contains the live data state structure of the amplifier. + */ + + __BEGIN_DECLS /** * \brief Amplifier state structure. @@ -69,3 +84,5 @@ struct amp_state __END_DECLS #endif /* _AMP_STATE_H */ + +/** @} */ ----------------------------------------------------------------------- Summary of changes: doc/Makefile.am | 3 +++ doc/hamlib.cfg.in | 16 ++++++++++--- doc/index.doxygen | 1 + include/hamlib/amp_state.h | 21 +++++++++++++++- include/hamlib/amplist.h | 27 ++++++++++++++++----- include/hamlib/multicast.h | 32 +++++++++++++++++++++---- include/hamlib/port.h | 57 ++++++++++++++++++++++++++++++++----------- include/hamlib/rig.h | 10 ++++---- include/hamlib/rot_state.h | 25 ++++++++++++++++--- include/hamlib/rotator.h | 29 ++++------------------ include/hamlib/rotlist.h | 60 ++++++++++++++++++++++++++++++++++++++++++---- src/multicast.c | 24 +++++++++++++++++++ 12 files changed, 240 insertions(+), 65 deletions(-) hooks/post-receive -- Hamlib -- Ham radio control libraries |