GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > EFC / V4-2-2

Constituent: efc     Tag: linux-gcc


Interface   Data Structures   File List   Data Fields   Globals  

EFA_asynch.c File Reference

Implements the asynchronous Event Filter Analysis routines. More...

#include "EFC/EHP.h"
#include "EFA_p.h"
#include "dprintf.h"
#include "LSF/LSF_reason.h"
#include "PBS/FORK.h"
#include "PBS/FPA.h"

Include dependency graph for EFA_asynch.c:


Data Structures

struct  _EFA_msgPost
 The post message to the FORK task. More...

Defines

#define NPACKETS   4
 The number of FPA result vector packets.
#define SYNCH
 Defines a bit mask representing which close reasons will force a synchronization.

Typedefs

typedef _EFA_msgPost EFA_msgPost
 Typedef for struct _EFA_msgPost.

Functions

static __inline void efa_wait (EFA *efa, int reason)
static __inline void efa_wake (EFA *efa, int reason)
static int efa_fpa_packet_sizeof (int result_size, int result_cnt)
 Returns the size of needed to for FPA buffer vectors.
static int efa_fpa_pool_sizeof (int result_size, int result_cnt)
 Returns the size of needed for FPA buffer vectors.
static int efa_fpa_sizeof (int result_size, int result_cnt)
 Returns the size of needed to contain the FPA pool for the result vectors.
static FORK_cb_status efa_handler_post (void *unused, EFA_msgPost *msg)
 The Event Filter Analysis FORK post callback routine.
static __inline int efa_apb_sizeof (int result_size, int result_cnt)
 Computes the size, in bytes, of the allocation and posting piece of the control structure.
static __inline void * efa_apb_construct (EFA *efa, void *mem, int result_size, int result_cnt)
void efa_flush (EFA *efa, int reason)
 Event Filter Analysis flush routine, asynchronous version.
void * EFA_alloc (EFA *efa)
 Result vector allocator.

Detailed Description

Implements the asynchronous Event Filter Analysis routines.

Author:
JJRussell - russell@slac.stanford.edu
   CVS $Id: EFA_asynch.c,v 1.1 2007/10/10 23:40:42 russell Exp $

Define Documentation

#define SYNCH
 

Value:

((1<<LSF_REASON_CLOSE_K_STOP      )   \
              | (1<<LSF_REASON_CLOSE_K_STOP_OP   )   \
              | (1<<LSF_REASON_CLOSE_K_ABORT     )   \
              | (1<<LSF_REASON_CLOSE_K_ABORT_OP  )   \
              | (1<<LSF_REASON_CLOSE_K_ABORT_AUTO)   \
              | (1<<LSF_REASON_CLOSE_K_RSVD_7    ))
Defines a bit mask representing which close reasons will force a synchronization.


Function Documentation

void * EFA_alloc EFA efa  ) 
 

Result vector allocator.

Returns:
Pointer to the allocated memory. Note that this pointer is advanced past the EFA_msgPost to the storage for the first result vector
Parameters:
efa The Event Filter Analysis control handle

static __inline int efa_apb_sizeof int  result_size,
int  result_cnt
[static]
 

Computes the size, in bytes, of the allocation and posting piece of the control structure.

Returns:
The size, in bytes,
Parameters:
result_size The size, in bytes, of one result vector
result_cnt The number of result vectors in one packet

static void efa_flush EFA efa,
int  reason
 

Event Filter Analysis flush routine, asynchronous version.

Parameters:
efa The Event Filter Analysis control structure
reason The posting reason

static int efa_fpa_packet_sizeof int  result_size,
int  result_cnt
[static]
 

Returns the size of needed to for FPA buffer vectors.

Returns:
The size, in bytes, of the FPA buffer
Parameters:
result_size Size of one result vectors
result_cnt The number of result vectors in one packet

static int efa_fpa_pool_sizeof int  result_size,
int  result_cnt
[static]
 

Returns the size of needed for FPA buffer vectors.

Returns:
The size, in bytes, of the FPA buffer
Parameters:
result_size Size of one result vectors
result_cnt The number of result vectors in one packet

static int efa_fpa_sizeof int  result_size,
int  result_cnt
[static]
 

Returns the size of needed to contain the FPA pool for the result vectors.

Returns:
The size, in bytes, of the FPA pool
Parameters:
result_size Size of one result vector
result_cnt The number of result vectors in one packet

static int FORK_cb_status efa_handler_post void *  unused,
EFA_msgPost msg
[static]
 

The Event Filter Analysis FORK post callback routine.

Returns:
FORK_C_CONTINUE
Parameters:
unused This would normally be the FORK user parameter, in this case the natural candidate would be the result handle, but since the generic event handling proxy is acting as the fork task, there is no user parameter associated with it.
msg The fork post message


Generated on Fri Sep 5 01:21:03 2008 by  doxygen 1.4.4