GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> TRC / V1-0-8 > trc / rhel5-32


Interface   Data Structures   File List   Data Fields   Globals  

TRC_prvdefs.h File Reference

Private definitions for the TRC trace facility. More...

#include <ITC/ITC_pubdefs.h>
#include <PBS/CACHE.h>
#include <PBS/FORK.h>
#include <PBS/FPA.h>
#include <PBS/MTX.h>
#include <PBS/RW.ih>
#include <PBS/WCT.h>
#include <TRC/TRC_pubdefs.h>

Classes

struct  _TRC_TaskCount
 Structure to hold a mapping from task ID to task name and statistics. More...
struct  _TRC_Task2Name
 Structure to hold a mapping from task ID to task name and statistics. More...
struct  _TRC_Monitor
 Structure to sample the task to name table. More...
struct  _TRC_Top
 A performance monitor result. More...
union  _TRC_Meta
 Union of unsigned int and unsigned char task meta-information. More...
struct  _TRC_TaskSwitch
 Structured record to enter a task switch in the trace. More...
struct  _TRC_Row
 Structure to define one row in the trace buffer. More...
struct  _TRC_Common
 Structure for meta-information common to all traces. More...
struct  _TRC_Buffer
 Structure of a trace buffer. More...
struct  _TRC_SnapTrace
 Structure to handle requests to snapshot a trace. More...
struct  _TRC_Control
 Structure of trace control block. More...

Defines

#define TRC_CACHE_LINE_PAD(_siz)   ( ( (_siz) + (CACHE_K_DATA_LINE_MASK) ) & ~(CACHE_K_DATA_LINE_MASK) )
 Pad an integer up to the next cache line boundary.
#define TRC_L_ROWS_DEFAULT   (1024)
 Default number of rows in a trace buffer.
#define TRC_L_ROWS_MAX   (4096)
 Maximum number of rows in a trace buffer.
#define TRC_L_ROWS_MIN   (128)
 Minimum number of rows in a trace buffer.
#define TRC_L_TASKLIST   (64)
 Maximum number of tasks supported.
#define TRC_L_TASKNAME   (16)
 Longest task name supported.
#define TRC_L_USERPARM   (128)
 Buffering of user parameters in a snapshot request.
#define TRC_TSK_OTHER   (48)
 Where "anonymous" tasks/other start in the task to name table.
#define TRC_DAT_NODATA   "no data recorded"
 String used in traces to indicate no data.
#define TRC_DAT_MISALIGN   "data buffer misaligned"
 The offical unknown task designation.

Typedefs

typedef enum _TRC_FormatGroup TRC_FormatGroup
 Typedef for enum _TRC_FormatGroup.
typedef enum _TRC_FormatMask TRC_FormatMask
 Typedef for enum _TRC_FormatMask.
typedef enum _TRC_State TRC_State
 Typedef for enum _TRC_State.
typedef struct _TRC_TaskCount TRC_TaskCount
 Typedef for struct _TRC_TaskCount.
typedef struct _TRC_Task2Name TRC_Task2Name
 Typedef for struct _TRC_Task2Name.
typedef union _TRC_Meta TRC_Meta
 Typedef for union _TRC_Meta.
typedef struct _TRC_TaskSwitch TRC_TaskSwitch
 Typedef for struct _TRC_TaskSwitch.
typedef struct _TRC_Row TRC_Row
 Typedef for struct _TRC_Row.
typedef struct _TRC_Common TRC_Common
 Typedef for struct _TRC_Common.
typedef struct _TRC_Control TRC_Control
 Typedef for struct _TRC_Control.

Enumerations

enum  _TRC_FormatGroup {
  TRC_K_FMT_TASK_SWITCH = 0,
  TRC_K_FMT_EXCEPTION_5 = 1,
  TRC_K_FMT_EXCEPTION_9 = 2,
  TRC_K_FMT_SIZE = 3
}
 Enumeration of the formatting groups ("facilities") used by TRC. More...
enum  _TRC_FormatMask {
  TRC_M_FMT_TASK_SWITCH = (1 << TRC_K_FMT_TASK_SWITCH),
  TRC_M_FMT_EXCEPTION_5 = (1 << TRC_K_FMT_EXCEPTION_5),
  TRC_M_FMT_EXCEPTION_9 = (1 << TRC_K_FMT_EXCEPTION_9)
}
 Bit masks of the formatting groups ("facilities") used by TRC. More...
enum  _TRC_State {
  TRC_CTL_UNINITIALIZED = 0,
  TRC_CTL_BROKEN = 1,
  TRC_CTL_INITIALIZED = 2
}
 Enumeration of TRC control states. More...

Functions

unsigned int TRC_validTrace (TRC_Control *tcb, TRC_Buffer **trc)
 Validate a trace pointer (plus trace initialization...).

Variables

TRC_ControlTRC_tcb
 Pointer to trace control block (initialized to NULL).
const char * TRC_noData
 External pointer to the fixed "no data" string.
const char * TRC_misaligned
 External pointer to the fixed "data misaligned" string.


Detailed Description

Private definitions for the TRC trace facility.

CVS $Id: TRC_prvdefs.h,v 1.4 2011/03/29 00:59:53 apw Exp $
Author:
A.P.Waite

Enumeration Type Documentation

Enumeration of the formatting groups ("facilities") used by TRC.

Enumerator:
TRC_K_FMT_TASK_SWITCH  Format of task switch records
TRC_K_FMT_EXCEPTION_5  Format of exception 5 records
TRC_K_FMT_EXCEPTION_9  Format of exception 9 records
TRC_K_FMT_SIZE  Number of format groups defined

Bit masks of the formatting groups ("facilities") used by TRC.

Enumerator:
TRC_M_FMT_TASK_SWITCH  Mask of TRC_K_FMT_TASK_SWITCH
TRC_M_FMT_EXCEPTION_5  Mask of TRC_K_FMT_EXCEPTION_5
TRC_M_FMT_EXCEPTION_9  Mask of TRC_K_FMT_EXCEPTION_9

enum _TRC_State

Enumeration of TRC control states.

Enumerator:
TRC_CTL_UNINITIALIZED  Uninitialized
TRC_CTL_BROKEN  Fatal error
TRC_CTL_INITIALIZED  Initialized


Function Documentation

unsigned int TRC_validTrace ( TRC_Control tcb,
TRC_Buffer **  trc 
)

Validate a trace pointer (plus trace initialization...).

Parameters:
tcb (in) Trace control block
trc (in) Trace buffer handle (doubly indirect!)
Return values:
TRC_NOTINIT Trace system not in state initialized
TRC_NOTTRACE Not a trace buffer
TRC_SUCCESS Success
TRC_validTrace() runs a standard validation on a trace buffer pointer. Success indicates that the control block is valid, the trace buffer pointer is valid (and may have been substituted with the system trace buffer pointer if the buffer pointer was originally NULL).

References _TRC_Control::nxt, _TRC_Control::state, TRC_CTL_INITIALIZED, and TRC_M_BUFFER.

Referenced by TRC_advertise(), TRC_attachSnap(), TRC_copy(), TRC_correlateTime(), TRC_delete(), TRC_detachSnap(), TRC_sizeofTrace(), and TRC_snapTrace().


Generated on Tue Nov 29 20:28:00 2011 by  doxygen 1.5.8