Hamlib 4.7.2
Loading...
Searching...
No Matches
Files | Macros | Typedefs
Amplifier Model list

Files

file  amplist.h
 Hamlib amplifier model definitions.
 

Macros

#define AMP_MAKE_MODEL(a, b)   ((a)*100+(b))
 The amp model number is held in a signed integer.
 
#define AMP_BACKEND_NUM(a)   ((a)/100)
 
#define AMP_MODEL_NONE   0
 A macro that returns the model number for an unknown model.
 
#define AMP_DUMMY   0
 
#define AMP_BACKEND_DUMMY   "dummy"
 
#define AMP_MODEL_DUMMY   AMP_MAKE_MODEL(AMP_DUMMY, 1)
 A macro that returns the model number for DUMMY.
 
#define AMP_MODEL_NETAMPCTL   AMP_MAKE_MODEL(AMP_DUMMY, 2)
 A macro that returns the model number for NETAMPCTL.
 
#define AMP_ELECRAFT   2
 
#define AMP_BACKEND_ELECRAFT   "elecraft"
 
#define AMP_MODEL_ELECRAFT_KPA1500   AMP_MAKE_MODEL(AMP_ELECRAFT, 1)
 A macro that returns the model number of KPA1500.
 
#define AMP_GEMINI   3
 
#define AMP_BACKEND_GEMINI   "gemini"
 
#define AMP_MODEL_GEMINI_DX1200   AMP_MAKE_MODEL(AMP_GEMINI, 1)
 A macro that returns the model number of DX1200.
 
#define AMP_EXPERT   4
 
#define AMP_BACKEND_EXPERT   "expert"
 
#define AMP_MODEL_EXPERT_FA   AMP_MAKE_MODEL(AMP_EXPERT, 1)
 A macro that returns the model number of FA.
 

Typedefs

typedef int amp_model_t
 

Detailed Description

Macro Definition Documentation

◆ AMP_BACKEND_DUMMY

#define AMP_BACKEND_DUMMY   "dummy"

Used in amp_reg.c for the be_name.

◆ AMP_BACKEND_ELECRAFT

#define AMP_BACKEND_ELECRAFT   "elecraft"

Used in amp_reg.c for the be_name.

◆ AMP_BACKEND_EXPERT

#define AMP_BACKEND_EXPERT   "expert"

Used in amp_reg.c for the be_name.

◆ AMP_BACKEND_GEMINI

#define AMP_BACKEND_GEMINI   "gemini"

Used in amp_reg.c for the be_name.

◆ AMP_BACKEND_NUM

#define AMP_BACKEND_NUM (   a)    ((a)/100)

Convenience macro to derive the backend family number from the model number.

◆ AMP_DUMMY

#define AMP_DUMMY   0

The DUMMY family. Also contains network models.

◆ AMP_ELECRAFT

#define AMP_ELECRAFT   2

The ELECRAFT family.

◆ AMP_EXPERT

#define AMP_EXPERT   4

The EXPERT family.

◆ AMP_GEMINI

#define AMP_GEMINI   3

The GEMINI family.

◆ AMP_MAKE_MODEL

#define AMP_MAKE_MODEL (   a,
 
)    ((a)*100+(b))

The amp model number is held in a signed integer.

Model numbers are a simple decimal value that increments by a value of 100 for each backend, e.g. the DUMMY backend has model numbers 1 to 100, the ELECRAFT backend has model numbers 201 to 300 and so on (101 to 200 is currently unassigned).

Note
A limitation is that with amp_model_t being a signed integer that on some systems such a value may be 16 bits. This limits the number of backends to 326 of 100 models each (32768 / 100 thus leaving only 68 models for backend number 327 so round down to 326). So far this doesn't seem like an extreme limitation.
See also
amp_model_t

◆ AMP_MODEL_DUMMY

#define AMP_MODEL_DUMMY   AMP_MAKE_MODEL(AMP_DUMMY, 1)

A macro that returns the model number for DUMMY.

The DUMMY model, as the name suggests, is a model which performs no hardware operations and always behaves as one would expect. It can be thought of as a hardware simulator and is very useful for testing client applications.

◆ AMP_MODEL_ELECRAFT_KPA1500

#define AMP_MODEL_ELECRAFT_KPA1500   AMP_MAKE_MODEL(AMP_ELECRAFT, 1)

A macro that returns the model number of KPA1500.

The KPA1500 model can be used with amplifiers that support the Elecraft KPA-1500 protocol.

◆ AMP_MODEL_EXPERT_FA

#define AMP_MODEL_EXPERT_FA   AMP_MAKE_MODEL(AMP_EXPERT, 1)

A macro that returns the model number of FA.

The Expert FA series of amplifiers is supported by this backend.

◆ AMP_MODEL_GEMINI_DX1200

#define AMP_MODEL_GEMINI_DX1200   AMP_MAKE_MODEL(AMP_GEMINI, 1)

A macro that returns the model number of DX1200.

The Gemini DX1200 covers 160 through 4 meters.

◆ AMP_MODEL_NETAMPCTL

#define AMP_MODEL_NETAMPCTL   AMP_MAKE_MODEL(AMP_DUMMY, 2)

A macro that returns the model number for NETAMPCTL.

The NETAMPCTL model allows use of the ampctld daemon through the normal Hamlib C API.

◆ AMP_MODEL_NONE

#define AMP_MODEL_NONE   0

A macro that returns the model number for an unknown model.

The none backend, as the name suggests, does nothing. It is mainly for internal use.

Typedef Documentation

◆ amp_model_t

typedef int amp_model_t

Convenience type definition for an amplifier model.