Go to the documentation of this file.
28 #if !defined(_SPANDSP_ARCTAN2_H_)
29 #define _SPANDSP_ARCTAN2_H_
41 #if defined(__cplusplus)
47 static __inline__ int32_t arctan2(
float y,
float x)
69 angle = 3.0f - (x + abs_y)/(abs_y - x);
71 angle = 1.0f - (x - abs_y)/(abs_y + x);
72 angle *= 536870912.0f;
78 return (int32_t) angle;
84 static __inline__
float arctan2f(
float y,
float x)
99 return 3.1415926f*1.5f;
100 return 3.1415926f*0.5f;
107 angle = 3.1415926f/2.0f - fx*fy/(y*y + 0.28125f*x*x);
109 angle = fy*fx/(x*x + 0.28125f*y*y);
113 angle = 3.1415926f - angle;
121 #if defined(__cplusplus)
#define CLIP_DTMF_HASH_CALLER_NUMBER
Definition: adsi.h:363
const char * adsi_standard_to_str(int standard)
Return a short name for an ADSI standard.
Definition: adsi.c:1103
@ MCLASS_CALLER_NAME
Definition: adsi.h:239
@ CLASS_SDMF_CALLERID
Definition: adsi.h:214
#define CLIP_DTMF_HASH_UNSPECIFIED
Definition: adsi.h:367
@ CLIP_ABSENCE2
Definition: adsi.h:277
@ CLIP_DATETIME
Definition: adsi.h:267
adsi_rx_state_t * adsi_rx_init(adsi_rx_state_t *s, int standard, put_msg_func_t put_msg, void *user_data)
Initialise an ADSI receive context.
Definition: adsi.c:427
int adsi_tx(adsi_tx_state_t *s, int16_t amp[], int max_len)
Generate a block of ADSI audio samples.
Definition: adsi.c:478
@ CLIP_MDMF_CALLERID
Definition: adsi.h:254
@ JCLIP_DIALED_NUM_DES
Definition: adsi.h:350
@ CLIP_SERVICE_INFO
Definition: adsi.h:303
@ CLASS_SDMF_MSG_WAITING
Definition: adsi.h:218
@ JCLIP_ABSENCE
Definition: adsi.h:352
@ CLIP_ADD_CHARGE
Definition: adsi.h:299
@ CLIP_DISPLAY_INFO
Definition: adsi.h:301
#define CLIP_DTMF_C_CALLER_NUMBER
Definition: adsi.h:370
@ ACLIP_CALLER_NUMBER
Definition: adsi.h:321
#define CLIP_DTMF_C_TERMINATED
Definition: adsi.h:360
@ ACLIP_MDMF_CALLERID
Definition: adsi.h:312
@ JCLIP_CALLER_NUMBER
Definition: adsi.h:344
#define CLIP_DTMF_HASH_TERMINATED
Definition: adsi.h:358
@ ACLIP_REDIRECT
Definition: adsi.h:327
int adsi_rx_free(adsi_rx_state_t *s)
Free the resources of an ADSI receive context.
Definition: adsi.c:471
@ CLIP_CALLER_NAME
Definition: adsi.h:275
@ ACLIP_CALLER_NAME
Definition: adsi.h:331
@ CLASS_MDMF_CALLERID
Definition: adsi.h:216
int adsi_next_field(adsi_rx_state_t *s, const uint8_t *msg, int msg_len, int pos, uint8_t *field_type, uint8_t const **field_body, int *field_len)
Get a field from an ADSI message.
Definition: adsi.c:881
@ CLIP_MESSAGE_ID
Definition: adsi.h:281
@ CLIP_DIALED_NUMBER
Definition: adsi.h:271
adsi_tx_state_t * adsi_tx_init(adsi_tx_state_t *s, int standard)
Initialise an ADSI transmit context.
Definition: adsi.c:660
@ CLIP_MDMF_MSG_WAITING
Definition: adsi.h:256
@ ACLIP_NUMBER_ABSENCE
Definition: adsi.h:325
@ MCLASS_DIALED_NUMBER
Definition: adsi.h:231
@ MCLASS_DATETIME
Definition: adsi.h:227
int adsi_tx_free(adsi_tx_state_t *s)
Free the resources of an ADSI transmit context.
Definition: adsi.c:692
Definition: private/adsi.h:84
#define JCLIP_MDMF_CALLERID
Definition: adsi.h:338
@ CLIP_ABSENCE1
Definition: adsi.h:273
@ ACLIP_SDMF_CALLERID
Definition: adsi.h:310
int adsi_rx(adsi_rx_state_t *s, const int16_t amp[], int len)
Receive a chunk of ADSI audio.
Definition: adsi.c:402
@ MCLASS_ABSENCE2
Definition: adsi.h:241
#define CLIP_DTMF_C_ABSENCE
Definition: adsi.h:374
Definition: private/adsi.h:36
@ CLIP_CHARGE
Definition: adsi.h:295
@ CLIP_REDIR_NUMBER
Definition: adsi.h:293
@ ACLIP_DATETIME
Definition: adsi.h:319
@ MCLASS_ABSENCE1
Definition: adsi.h:233
@ CLIP_CALLER_NUMBER
Definition: adsi.h:269
#define CLIP_DTMF_C_REDIRECT_NUMBER
Definition: adsi.h:372
void adsi_tx_set_preamble(adsi_tx_state_t *s, int preamble_len, int preamble_ones_len, int postamble_ones_len, int stop_bits)
Adjust the preamble associated with an ADSI transmit context.
Definition: adsi.c:512
@ ACLIP_DIALED_NUMBER
Definition: adsi.h:323
@ CLIP_CALLTYPE
Definition: adsi.h:285
@ CLIP_MDMF_CHARGE_INFO
Definition: adsi.h:258
@ ACLIP_NAME_ABSENCE
Definition: adsi.h:333
@ MCLASS_CALLER_NUMBER
Definition: adsi.h:229
@ MCLASS_REDIRECT
Definition: adsi.h:235
@ MCLASS_QUALIFIER
Definition: adsi.h:237
#define MCLASS_VISUAL_INDICATOR
Definition: adsi.h:248
@ CLASS_MDMF_MSG_WAITING
Definition: adsi.h:220
@ JCLIP_CALLER_NUM_DES
Definition: adsi.h:346
@ JCLIP_DIALED_NUMBER
Definition: adsi.h:348
@ ACLIP_QUALIFIER
Definition: adsi.h:329
int adsi_add_field(adsi_tx_state_t *s, uint8_t *msg, int len, uint8_t field_type, uint8_t const *field_body, int field_len)
Insert the header or a field into an ADSI message.
Definition: adsi.c:1001
@ CLIP_NUM_MSG
Definition: adsi.h:287
#define CLIP_DTMF_HASH_ABSENCE
Definition: adsi.h:365
@ CLIP_MDMF_SMS
Definition: adsi.h:260
@ CLIP_VISUAL_INDICATOR
Definition: adsi.h:279
int adsi_tx_put_message(adsi_tx_state_t *s, const uint8_t *msg, int len)
Put a message into the input buffer of an ADSI transmit context.
Definition: adsi.c:565
@ CLIP_DURATION
Definition: adsi.h:297