libvpb  4.2.57
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Programmable tone detector

More information on the libvpb programmable tone detector is available here. More...

Collaboration diagram for Programmable tone detector:

Classes

struct  VPB_STRAN
 Cadence state transition data for VPB_DETECT. More...
 
struct  VPB_DETECT
 Container for programmable tone detector parameters. More...
 

Enumerations

enum  ToneStateTransition { VPB_TIMER = 0, VPB_RISING = 1, VPB_FALLING = 2, VPB_DELAY = 3 }
 Tone detector state transition types.
 

Functions

void WINAPI vpb_settonedet (VPBPortHandle handle, const VPB_DETECT &d)
 Set or change the parameters for a tone to detect on some port.
 
void WINAPI vpb_settonedet (VPBPortHandle handle, const VPB_DETECT *d)
 
void WINAPI vpb_gettonedet (VPBPortHandle handle, int id, VPB_DETECT *d)
 
void WINAPI vpb_deltonedet (VPBPortHandle handle, const VPB_DETECT &d)
 Revove a tone detector from some port.
 
void WINAPI vpb_deltonedet (VPBPortHandle handle, const VPB_DETECT *d)
 
int WINAPI vpb_debug_tonedet (VPBPortHandle handle, int id, char file_name[], int sec)
 
int WINAPI vpb_enable_tone_event (VPBPortHandle handle, unsigned long mask)
 Enable the TONE events specified by mask for handle. More...
 
int WINAPI vpb_disable_tone_event (VPBPortHandle handle, unsigned long mask)
 Disable the TONE events specified by mask for handle. More...
 
unsigned long WINAPI vpb_get_tone_event_mask (VPBPortHandle handle)
 Return the current TONE event mask for handle.
 
int WINAPI vpb_set_tone_event_mask (VPBPortHandle handle, unsigned long mask)
 Set the TONE event mask. The previous mask value will be overwritten.
 

General limits

#define VPB_MD   10
 The maximum number of tone detectors per device.
 
#define VPB_MS   10
 The maximum number of cadence states to match.
 

Built in tone dectector ID's

#define VPB_DIAL   0
 dial tone detected (US/Aust/sudio308)
 
#define VPB_RINGBACK   1
 ringback detected (US)
 
#define VPB_BUSY   2
 busy tone detected (US)
 
#define VPB_GRUNT   3
 grunt detected
 
#define VPB_RINGBACK_308   4
 ringback detected (studio 308)
 
#define VPB_BUSY_308   5
 busy tone detected (studio 308)
 
#define VPB_FAX   6
 fax CNG tone/preamble
 
#define VPB_BUSY_AUST   7
 busy/disconnect tone detected (Australia)
 
#define VPB_RINGBACK_AUS   8
 ringback detected (Australia)
 
#define VPB_SPARE9   9
 Spare.
 

Tone masks

#define VPB_MDIAL   (1<<VPB_DIAL)
 
#define VPB_MRINGBACK   (1<<VPB_RINGBACK)
 
#define VPB_MBUSY   (1<<VPB_BUSY)
 
#define VPB_MGRUNT   (1<<VPB_GRUNT)
 
#define VPB_MRINGBACK_308   (1<<VPB_RINGBACK_308)
 
#define VPB_MBUSY_308   (1<<VPB_BUSY_308)
 
#define VPB_MFAX   (1<<VPB_FAX)
 
#define VPB_MBUSY_AUST   (1<<VPB_BUSY_AUST)
 
#define VPB_MRINGBACK_AUS   (1<<VPB_RINGBACK_AUS)
 
#define VPB_MSPARE9   (1<<VPB_SPARE9)
 
#define VPB_MALL_TONES   ((unsigned long)-1)
 

Detailed Description

More information on the libvpb programmable tone detector is available here.

Function Documentation

int WINAPI vpb_disable_tone_event ( VPBPortHandle  handle,
unsigned long  mask 
)

Disable the TONE events specified by mask for handle.

Events not included in the mask are unaffected.

References CheckHandle(), and VPB_DEV::tonemask.

int WINAPI vpb_enable_tone_event ( VPBPortHandle  handle,
unsigned long  mask 
)

Enable the TONE events specified by mask for handle.

Events not included in the mask are unaffected.

References CheckHandle(), and VPB_DEV::tonemask.