[T106][ZXW-22]7520V3SCV2.01.01.02P42U09_VEC_V0.8_AP_VEC origin source commit
Change-Id: Ic6e05d89ecd62fc34f82b23dcf306c93764aec4b
diff --git a/cp/ps/modem/psbase/inc/tic.h b/cp/ps/modem/psbase/inc/tic.h
new file mode 100644
index 0000000..1adac21
--- /dev/null
+++ b/cp/ps/modem/psbase/inc/tic.h
@@ -0,0 +1,135 @@
+/* ============================================================================
+** Copyright (C) 2002-2006 COMNEON GmbH & Co. OHG. All rights reserved.
+** ============================================================================
+**
+** ============================================================================
+**
+** This document contains proprietary information belonging to COMNEON.
+** Passing on and copying of this document, use and communication of its
+** contents is not permitted without prior written authorisation.
+**
+** ============================================================================
+** Revision Information :
+** File name: tic.h
+** Version: /main/6
+** Date: 2006-01-11 9:53:32
+**
+** ============================================================================
+** Project: Mobile Station (MS)
+** Block: -
+** Process: TIC
+**
+** ============================================================================
+** Contents: This file contains the interfaces for the timer management
+** component.
+**
+** ============================================================================
+** History:
+**
+** Date Author Comment
+**
+** 13.02.02 ges created.
+**
+** ============================================================================
+*/
+
+#ifndef TIC_H
+#define TIC_H
+
+/*============================================================================
+Exported Type Declarations
+============================================================================*/
+
+/* External representation of the timer control block data type.*/
+typedef struct tic_timer_s *tic_timer_t;
+
+
+/* TIC control ids.
+ *
+ * TIC_INFO:
+ * Get timer information.
+ *
+ * TIC_TRACE: 0/1 = disable/enable the tic trace.
+ * tic_ctrl_trace_t trace;
+ * trace.stat = 1;
+ * tic_timer_control (TIC_CTRL_TRACE, &trace, sizeof (tic_ctrl_trace_t));
+ */
+typedef enum
+{
+ TIC_CTRL_INFO,
+ TIC_CTRL_TRACE
+}tic_req_t;
+
+typedef struct tic_ctrl_info_s
+{
+ UINT16 max_number; /* Max. number of available timers. */
+ UINT16 installed; /* Number of installed timers. */
+} tic_ctrl_info_t;
+
+
+typedef struct tic_ctrl_trace_s
+{
+ UINT8 stat; /* 0/1 = disable/enable the tic trace. */
+} tic_ctrl_trace_t;
+
+
+/*============================================================================
+Exported Function Declarations
+============================================================================*/
+/**B**************************************************************************
+ * Function: tic_timer_create
+ *----------------------------------------------------------------------------
+ * Purpose: This function creates a timer and places it on the
+ * list of created timers. The timer is activated by
+ * tic_timer_start(). Upon timer expiration the
+ * expiration_routine is called.
+ *
+ * Parameters: expfunc: timer expiration routine.
+ * arg: argument of the expiration routine.
+ *
+ * Returns: Timer handle.
+ ***E*************************************************************************/
+extern tic_timer_t tic_timer_create(VOID (*expfunc)(VOID *arg), VOID *arg);
+
+
+/**B**************************************************************************
+ * Function: tic_timer_free
+ *----------------------------------------------------------------------------
+ * Purpose: This function is responsible for freeing a timer.
+ *
+ * Parameters: timer: timer handle.
+ *
+ * Returns: 1 means during dealloction the timer handler was executed,
+ * otherwise 0.
+ ***E*************************************************************************/
+extern SINT32 tic_timer_free(tic_timer_t timer);
+
+
+/**B**************************************************************************
+ * Function: tic_timer_start
+ *----------------------------------------------------------------------------
+ * Purpose: This function is responsible for starting a timer.
+ *
+ * Parameters: timer: timer handle.
+ * secs: number of seconds.
+ * nano_secs: nano seconds.
+ *
+ * Returns: None.
+ ***E*************************************************************************/
+extern VOID tic_timer_start(tic_timer_t timer, UNSIGNED secs, UNSIGNED nano_secs);
+
+
+/**B**************************************************************************
+ * Function: tic_timer_stop
+ *----------------------------------------------------------------------------
+ * Purpose: This function is responsible for stopping a timer.
+ *
+ * Parameters: timer: timer handle.
+ *
+ * Returns: 1 means during stopping the timer handler was executed,
+ * otherwise 0.
+ ***E*************************************************************************/
+extern SINT32 tic_timer_stop(tic_timer_t timer);
+
+#endif /* TIC_H */
+