/*===========================================================================
                    IMPORTANT NOTICE

                  OEM DISTRIBUTION ONLY

FILE:  bridle_AddrBookRUIM.h

SERVICES:  BRIDLE AddrBookRUIM System calls. 

GENERAL DESCRIPTION:
	Definitions, typedefs, etc. for bridle

        Copyright © 2003 QUALCOMM Incorporated.
               All Rights Reserved.
            QUALCOMM Proprietary/GTDR
===========================================================================*/
#ifndef _BRIDLE_ADDRBOOKRUIM_H_
#define _BRIDLE_ADDRBOOKRUIM_H_

#include "AEEBridle.h"
#include "rex.h"
#include "uim.h"
#include "nvruimi.h"

enum {
   BRIDLE_ADDRBOOKRUIM_rex_set_sigs,
   BRIDLE_ADDRBOOKRUIM_rex_clr_sigs,
   BRIDLE_ADDRBOOKRUIM_rex_wait,
   BRIDLE_ADDRBOOKRUIM_uim_cmd,
   BRIDLE_ADDRBOOKRUIM_nvruim_phbook_ascii_to_bcd,
   BRIDLE_ADDRBOOKRUIM_nvruim_phbook_bcd_to_ascii,
   BRIDLE_ADDRBOOKRUIM_COUNT
};

extern uint32 bridle_addrbookruim_swi;

#define ADDRBOOKRUIM_BRIDLE1_VOID( f, t1, v1, n1) \
      BRIDLE1_VOID( f, t1, v1, n1, \
                     bridle_addrbookruim_swi, BRIDLE_ADDRBOOKRUIM_##f )   

#define ADDRBOOKRUIM_BRIDLE2_VOID( f, t1, v1, n1, t2, v2, n2) \
      BRIDLE2_VOID( f, t1, v1, n1, t2, v2, n2, \
                     bridle_addrbookruim_swi, BRIDLE_ADDRBOOKRUIM_##f )   

#define ADDRBOOKRUIM_BRIDLE3_VOID( f, t1, v1, n1, t2, v2, n2, t3, v3, n3 ) \
      BRIDLE3_VOID( f, t1, v1, n1, t2, v2, n2, t3, v3, n3, \
                      bridle_addrbookruim_swi, BRIDLE_ADDRBOOKRUIM_##f )

#define ADDRBOOKRUIM_BRIDLE3_RET( rt, f, t1, v1, n1, t2, v2, n2, t3, v3, n3 ) \
      BRIDLE3_RET( rt, f, t1, v1, n1, t2, v2, n2, t3, v3, n3, \
                      bridle_addrbookruim_swi, BRIDLE_ADDRBOOKRUIM_##f )

ADDRBOOKRUIM_BRIDLE2_VOID( rex_set_sigs,
                           rex_tcb_type *, BRIDLE_CHECK_NONE, 0,
                           rex_sigs_type, BRIDLE_CHECK_NONE, 0 )
#define rex_set_sigs packbridle_rex_set_sigs

ADDRBOOKRUIM_BRIDLE2_VOID( rex_clr_sigs,
                           rex_tcb_type *, BRIDLE_CHECK_NONE, 0,
                           rex_sigs_type, BRIDLE_CHECK_NONE, 0 )
#define rex_clr_sigs packbridle_rex_clr_sigs

ADDRBOOKRUIM_BRIDLE1_VOID( rex_wait,
                           rex_sigs_type, BRIDLE_CHECK_NONE, 0 )
#define rex_wait packbridle_rex_wait

ADDRBOOKRUIM_BRIDLE1_VOID( uim_cmd,
                           uim_cmd_type *, BRIDLE_CHECK_NONE, 0 )
#define uim_cmd packbridle_uim_cmd

ADDRBOOKRUIM_BRIDLE3_VOID( nvruim_phbook_ascii_to_bcd,
                           byte , BRIDLE_CHECK_NONE, 0,
                           byte *, BRIDLE_CHECK_NONE, 0,
                           byte *, BRIDLE_CHECK_NONE, 0)
#define nvruim_phbook_ascii_to_bcd packbridle_nvruim_phbook_ascii_to_bcd

ADDRBOOKRUIM_BRIDLE3_RET(  byte, nvruim_phbook_bcd_to_ascii,
                           byte , BRIDLE_CHECK_NONE, 0,
                           byte *, BRIDLE_CHECK_NONE, 0,
                           byte *, BRIDLE_CHECK_READACCESS, PHONEBOOK_DN)
#define nvruim_phbook_bcd_to_ascii packbridle_nvruim_phbook_bcd_to_ascii

#endif // _BRIDLE_ADDRBOOKRUIM_H_
