PASDK-516:Add ASOT event creation
[processor-sdk/performance-audio-sr.git] / pasdk / test_dsp / framework / audioStreamOutProc.c
index 44040493f1fbc1d217e3cdf0a0448af0be6539c4..2fa5936251aa9eab20784396c2c131e28bf676c8 100644 (file)
@@ -181,7 +181,6 @@ Int32 gNumPfpAsot1=0; // debug
 #define ASOP_DP_DECFINALTEST_ERR    ( -6 )  // decode final error
 
 
-
 /* Check if at least one output selected */
 static Int checkOutSel(
     const PAF_ASOT_Params *pP, 
@@ -280,6 +279,9 @@ static Void resetAfMetadata(
     PAF_AST_Stream *xStr
 );
 
+// Create ASOT event
+static Int asotCreateEvent(void);
+
 
 LINNO_DEFN(TaskAsop); /* Line number macros */
 ERRNO_DEFN(TaskAsop); /* Error number macros */
@@ -288,12 +290,16 @@ ERRNO_DEFN(TaskAsop); /* Error number macros */
 #pragma DATA_SECTION(gPAF_ASOT_config, ".globalSectionPafAsotConfig")
 PAF_ASOT_Config gPAF_ASOT_config = {
     NULL,               // taskHandle
+    0,                  // asotState
     NULL,               // acp
-    0,0,0,              // CB drained flags (size DECODE_MAXN)
+    0,0,0,              // cbDrainedFlag (size DECODE_MAXN)
     &gPAF_ASPM_config,  // pAspmCfg
     &gPAF_AST_config    // pAstCfg
 };
 
+/* Event handle for Tx - to put in structure */
+Event_Handle asopEvt;
+
 // Underflow threshold before circular buffer reset and return error to Top-Level FSM
 #define DEC_OP_CB_RDAF_UND_THR  ( 80 ) // FL: arbitrary setting
 UInt32 gCbReadAfErr         =0; // read circular buffer error count, not including underflows
@@ -335,6 +341,7 @@ Void taskAsopFxnInit(
     Int z;                          /* input/encode/stream/decode/output counter */
     Int i;                          /* phase */
     Int zMS;
+    Int status;
 
     Log_info0("Enter taskAsopFxnInit()");
 
@@ -362,6 +369,14 @@ Void taskAsopFxnInit(
     pAsotCfg->taskHandle = Task_self(); // set task handle
     pAstCfg = pAsotCfg->pAstCfg;        // get pointer to AST common (shared) configuration
 
+    // Create ASIT event
+    status = asotCreateEvent();
+    if (status < 0)
+    {
+        TRACE_TERSE0("TaskAsop: unable to initialize event. Exiting.");
+        return;
+    }
+    
     /* Obtain Audio Stream Number (1, 2, etc.) */
     as = pAstCfg->as;
     TRACE_TERSE1("TaskAsop: Started with AS%d.", as);
@@ -424,6 +439,25 @@ Void taskAsopFxnInit(
     }
 } /* taskAsopFxnInit */
 
+/*
+ *  ========asotCreateEvent ========
+ *  Create ASOT event
+ */
+static Int asotCreateEvent(void)
+{
+    Error_Block eb;
+    
+    Error_init(&eb);
+    
+    // Default instance configuration params
+    asopEvt = Event_create(NULL, &eb);
+    if (asopEvt == NULL) 
+    {
+        return -1; // error code
+    }
+    
+    return 0;
+} /* asotCreateEvent */
 
 /*
  *  ======== taskAsopFxn ========