wvLibP.h
上传用户:luoyougen
上传日期:2008-05-12
资源大小:23136k
文件大小:2k
源码类别:

VxWorks

开发平台:

C/C++

  1. /* wvLibP.h - WindView lib private header */
  2. /* Copyright 1997 Wind River Systems, Inc. */
  3. /*
  4. modification history
  5. --------------------
  6. 01e,20apr98,cth  changed WV_LOG_HEADER def, reverted uploadTaskPriority to 01b
  7. 01d,17apr98,cth  added type WV_LOG_HEADER, removed prototype of wvUpload
  8. 01c,15apr98,cth  removed wvUploadTaskPriority, added wvUploadTaskPriorityCont
  9.  and wvUploadPathPriorityOnce
  10. 01b,18dec97,cth  updated includes
  11. 01a,16nov97,cth  created, derived from wvLib.h
  12. */
  13. #ifndef __INCwvlibph
  14. #define __INCwvlibph
  15. #include "wvLib.h"
  16. #include "private/wvUploadPathP.h"
  17. #include "private/wvBufferP.h"
  18. #ifdef __cplusplus
  19. extern "C" {
  20. #endif
  21. /* globals */
  22. extern int      wvUploadTaskPriority;    /* upload task priority */
  23. extern int      wvUploadTaskStackSize;     /* upload task stack size (bytes) */
  24. extern int      wvUploadTaskOptions;       /* upload task options */
  25. /* types */
  26. typedef struct wvUploadTaskDescriptor
  27.     {
  28.     int         uploadTaskId;           /* task id of this upload task */
  29.     SEMAPHORE   uploadCompleteSem;      /* given iff buffers are emptied */
  30.     BOOL        exitWhenEmpty;          /* if true task exits when buf empty */
  31.     UPLOAD_ID uploadPathId; /* id of the upload path to host */
  32.     BUFFER_ID bufferId; /* id of the buffer to upload from */
  33.     int status; /* indicate errors in up task */
  34.     } WV_UPLOADTASK_DESC;
  35. typedef struct wvEvtLogHeader
  36.     {
  37.     PART_ID memPart; /* where it's located */
  38.     int     len; /* length of header */
  39.     char   *header;  /* a packed array of events */
  40.     } WV_LOG_HEADER;
  41. /*
  42.  * See wvLib manual page for a description of the taskname event buffer.
  43.  */
  44. typedef struct tnEvent
  45.     {
  46.     short          eventId;
  47.     int            status;
  48.     int            priority;
  49.     int            taskLockCount;
  50.     int            tid;
  51.     int            nameSize;
  52.     char          *name;
  53.     } TN_EVENT;
  54. typedef struct tnNode
  55.     {
  56.     TN_EVENT      *event;
  57.     int            key;
  58.     struct tnNode *next;
  59.     } TN_NODE;
  60. typedef struct tnHashTable
  61.     {
  62.     int            size;
  63.     PART_ID        memPart;
  64.     TN_NODE      **tbl; /* *tbl[] */
  65.     } TN_HASH_TBL;
  66. typedef TN_HASH_TBL * TASKBUF_ID;
  67. typedef struct tnIterKey
  68.     {
  69.     int     index;
  70.     TN_NODE    *pCur;
  71.     } TN_ITER_KEY;
  72. /* function declarations */
  73. #if defined(__STDC__) || defined(__cplusplus)
  74. #else   /* __STDC__ */
  75. #endif  /* __STDC__ */
  76. #ifdef __cplusplus
  77. }
  78. #endif
  79. #endif /* __INCwvlibph*/