亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? usrwindview.c

?? ppc 8245 可編譯bsp 包括 uart
?? C
字號:
/* usrWindview.c - configuration file for Windview on the target *//* Copyright 1997 Wind River Systems, Inc. *//*modification history--------------------01i,03mar99,dgp  update to reference project facility instead of config.h01h,28aug98,dgp  FCS man page edit01g,13may98,cth  changed minimum buffers, added wvUploadStop to error handling01f,06may98,dgp  clean up man pages for WV 2.0 beta release01e,20apr98,cth  changed rbuff options, moved wvEvtLogInit, added 		 wvLogHeaderCreate and Upload01d,17apr98,cth  added partition id to wvEvtLogInit01c,15apr98,cth  more clean up01b,27jan98,cth  cleaned up and made work01a,18dec97,cth  written*//*DESCRIPTIONThis file is included in usrConfig.c.This file contains routines that configure and initialize Windview's targetcomponents based on directives in the configuration files.  The routineswvOn() and wvOff() are also defined here. They provide an easy way tostart and stop a typical instance of Windview from a shell, rather thanusing the Windview-host user interface.  wvOn() and wvOff() simplify the process of starting and stopping Windview by bundling the calls necessary to do so into a single routine.  The Windview host GUI does not call wvOn()or wvOff() explicitly, so it is possible to modify them to meet users'specific requirements.INTERNALThe typical instance of Windview includes using rBuff buffers; one of file, socket, or TSFS-socket upload paths (determined by the value of WV_DEFAULT_UPLOAD_TYPE set below); and uploading events continuously.  There are several upload paths that can be configured into the vxWorksimage.  The upload paths are included by defining INCLUDE_WVUPLOAD_<type>in configAll.h.  It is common to include more than one type of path,allowing the host user interface to be used to select between the typeswithout recompiling the target.  If no upload path is explicitly includedwithin configAll.h, then INCLUDE_WVUPLOAD_FILE is added by default.  See usrDepend.c for other dependencies.SEE ALSO.I WindView User's Guide*/#ifndef __INCusrWindviewc#define __INCusrWindviewc#include "vxWorks.h"#include "inetLib.h"#include "logLib.h"#include "wvLib.h"#include "wvTmrLib.h"#include "rBuffLib.h"#include "private/wvBufferP.h"#include "private/wvUploadPathP.h"#include "private/seqDrvP.h"#include "private/funcBindP.h"#include "private/wvFileUploadPathLibP.h"#include "private/wvSockUploadPathLibP.h"#include "private/wvTsfsUploadPathLibP.h"/* defines */#define WV_FILE         1               /* file upload-path type */#define WV_SOCK         2               /* socket upload-path type */#define WV_TSFSSOCK     3               /* tsfs socket upload-path type */#define WV_DEFAULT_BUF_MIN              4#define WV_DEFAULT_BUF_MAX              10#define WV_DEFAULT_BUF_SIZE             0x8000#define WV_DEFAULT_BUF_THRESH           0x4000#define WV_DEFAULT_BUF_OPTIONS          0x0/*  * Choose an upload path created/destroyed by wvOn/wvOff, based on the  * included libraries.  The order of choice is File, then TSFS socket,  * then socket, etc. */#ifdef INCLUDE_WVUPLOAD_FILE#define WV_DEFAULT_UPLOAD_TYPE          WV_FILE#endif#ifdef INCLUDE_WVUPLOAD_TSFSSOCK#if    !defined (WV_DEFAULT_UPLOAD_TYPE)#define WV_DEFAULT_UPLOAD_TYPE		WV_TSFSSOCK#endif#endif#ifdef INCLUDE_WVUPLOAD_SOCK#if    !defined (WV_DEFAULT_UPLOAD_TYPE)#define WV_DEFAULT_UPLOAD_TYPE		WV_SOCK#endif#endif/* globals */int wvDefaultBufSize;		/* default size of a buffer */int wvDefaultBufMax;		/* default max number of buffers */int wvDefaultBufMin;		/* default min number of buffers */int wvDefaultBufThresh;		/* default threshold for uploading, in bytes */int wvDefaultBufOptions;	/* default rBuff options */rBuffCreateParamsType   wvDefaultRBuffParams;  /* contains the above values */BUFFER_ID	  wvBufId;	/* event-buffer id used by wvOn/Off */UPLOAD_ID	  wvUpPathId;	/* upload-path id used by wvOn/Off */WV_UPLOADTASK_ID  wvUpTaskId;	/* upload-task id used by wvOn/Off */WV_LOG_HEADER_ID  wvLogHeader;	/* the event-log header *//* forward declarations */int wvRBuffErrorHandler (void);/******************************************************************************** windviewConfig - configure and initialize Windview components** NOMANUAL**/STATUS windviewConfig (void)    {    /*     * This is not mandatory at this point, but by setting these global      * variables to the default values here, they can be changed from the     * shell before wvOn/wvOff use them.     */    wvDefaultBufSize     	= WV_DEFAULT_BUF_SIZE;    wvDefaultBufMax	 	= WV_DEFAULT_BUF_MAX;    wvDefaultBufMin	 	= WV_DEFAULT_BUF_MIN;    wvDefaultBufThresh	 	= WV_DEFAULT_BUF_THRESH;    wvDefaultBufOptions	 	= WV_DEFAULT_BUF_OPTIONS;    wvDefaultRBuffParams.minimum	  = wvDefaultBufMin;    wvDefaultRBuffParams.maximum	  = wvDefaultBufMax;    wvDefaultRBuffParams.buffSize	  = wvDefaultBufSize;    wvDefaultRBuffParams.threshold	  = wvDefaultBufThresh;    wvDefaultRBuffParams.options	  = wvDefaultBufOptions;    wvDefaultRBuffParams.sourcePartition  = memSysPartId;    wvDefaultRBuffParams.errorHandler	  = wvRBuffErrorHandler;    /*      * Initialize timestamp support with user defined, system timer, or     * sequential, depending on configAll directives.  Sequential will     * be the default if user or system is not requested.     */#ifdef  INCLUDE_TIMESTAMP#ifdef  INCLUDE_USER_TIMESTAMP    wvTmrRegister ((UINTFUNCPTR) USER_TIMESTAMP,                   (UINTFUNCPTR) USER_TIMESTAMPLOCK,                   (FUNCPTR)     USER_TIMEENABLE,                   (FUNCPTR)     USER_TIMEDISABLE,                   (FUNCPTR)     USER_TIMECONNECT,                   (UINTFUNCPTR) USER_TIMEPERIOD,                   (UINTFUNCPTR) USER_TIMEFREQ);#else   /* INCLUDE_USER_TIMESTAMP */    wvTmrRegister (sysTimestamp,                   sysTimestampLock,                   sysTimestampEnable,                   sysTimestampDisable,                   sysTimestampConnect,                   sysTimestampPeriod,                   sysTimestampFreq);#endif  /* INCLUDE_USER_TIMESTAMP */#else   /* INCLUDE_TIMESTAMP */    wvTmrRegister (seqStamp,                   seqStampLock,                   seqEnable,                   seqDisable,                   seqConnect,                   seqPeriod,                   seqFreq);#endif  /* INCLUDE_TIMESTAMP */    /*     * Include and complete initialization for wvLib.     */    wvLibInit2 ();    /*     * Include and initialize rBuffLib as the event buffer.     */    rBuffLibInit ();    /*      * Pull in upload-path functions. Any or all of the types of upload     * paths can be included in the final vxWorks in order that the     * Windview host GUI can create whichever type the user requests.     */#ifdef INCLUDE_WVUPLOAD_FILE    fileUploadPathLibInit ();#endif#ifdef INCLUDE_WVUPLOAD_SOCK    sockUploadPathLibInit ();#endif#ifdef INCLUDE_WVUPLOAD_TSFSSOCK    tsfsUploadPathLibInit ();#endif    return (OK);    }/******************************************************************************** wvOn - start a typical instance of event logging and upload (Windview)** This routine starts a typical instance of WindView event logging and event* upload.  rBuff buffers are used to store events.  The file upload path is* TSFS-socket, socket, or file.  Event data is uploaded to the path * continuously.** Event logging is started for events belonging to <class>.  The rBuff buffer* is created using the values in 'wvDefaultRBuffParams', which are taken from* the globals 'wvDefaultBufxxx', configurable from usrWindview.c.  The upload* path used to transfer events away from the event buffer is determined by* the value of WV_DEFAULT_UPLOAD_TYPE, also set in usrWindview.c to one * of WV_FILE, WV_TSFSSOCK or WV_SOCK.  The upload path is opened using the * remaining parameters as follows:** .TS* tab(|)* lf3 lf3 lf3* l l l.*         | WV_FILE        | WV_TSFSOCK / WV_SOCK* _* arg2    | char *filename | char *hostIp* arg3    | openFlags      | short port* arg4    | not used       | not used* .TE** The arguments are of generic type and name to allow the addition of new* types of upload paths or customization of wvOn().** RETURNS: OK, or ERROR if the upload path can not be created, the upload task * can not be created, or the rBuff buffer can not be created.** SEE ALSO: wvOff()**/STATUS wvOn     (    int class,		/* class of events to be logged */    int arg2,		/* filename, hostIp, etc. */    int arg3,		/* port number, openFlags etc. */    int arg4		/* for future expansion */    )    {    /* Create a buffer. */    if ((wvBufId = rBuffCreate (& wvDefaultRBuffParams)) == NULL)        {        logMsg ("wvOn: error creating buffer.\n",0,0,0,0,0,0);        return (ERROR);        }    /*      * Create a path for events to be uploaded to the host.  If more than     * one UploadPath library is compiled into vxWorks, the fileUploadPath     * will be the one used.     */#if (WV_DEFAULT_UPLOAD_TYPE == WV_SOCK)    if ((wvUpPathId = sockUploadPathCreate ((char *) arg2, 				            (short)(htons (arg3)))) == NULL)        {        logMsg ("wvOn: error creating upload path(ip=%s port=%d).\n",                arg2, arg3,0,0,0,0);        rBuffDestroy (wvBufId);        return (ERROR);        }#endif#if (WV_DEFAULT_UPLOAD_TYPE == WV_TSFSSOCK)    if ((wvUpPathId = tsfsUploadPathCreate ((char *) arg2, 					    (short)(htons (arg3)))) == NULL)        {        logMsg ("wvOn: error creating upload path(ip=%s port=%d).\n",                arg2, arg3,0,0,0,0);        rBuffDestroy (wvBufId);        return (ERROR);        }#endif#if (WV_DEFAULT_UPLOAD_TYPE == WV_FILE)    if ((wvUpPathId = fileUploadPathCreate ((char *) arg2, arg3)) == NULL)        {        logMsg ("wvOn: error creating upload path(fname=%s).\n",                arg2,0,0,0,0,0);        rBuffDestroy (wvBufId);        return (ERROR);        }#endif    /*     * Initialize the event log, and let event logging routines know which     * buffer to log events to.     */    wvEvtLogInit (wvBufId);    /*     * Start the upload task.  Uploading will be continuous after this     * is started.     */    if ((wvUpTaskId = wvUploadStart (wvBufId, wvUpPathId, TRUE)) == NULL)        {        logMsg ("wvOn: error launching upload.\n",0,0,0,0,0,0);        rBuffDestroy (wvBufId);#if (WV_DEFAULT_UPLOAD_TYPE == WV_SOCK)        sockUploadPathClose (wvUpPathId);#endif#if (WV_DEFAULT_UPLOAD_TYPE == WV_TSFSSOCK)        tsfsUploadPathClose (wvUpPathId);#endif#if (WV_DEFAULT_UPLOAD_TYPE == WV_FILE)        fileUploadPathClose (wvUpPathId);#endif        return (ERROR);        }    /*     * Capture a log header, including task names active in the system.     */    if ((wvLogHeader = wvLogHeaderCreate (memSysPartId)) == NULL)        {        logMsg ("wvOn: error creating log header.\n",0,0,0,0,0,0);	wvUploadStop (wvUpTaskId);        rBuffDestroy (wvBufId);#if (WV_DEFAULT_UPLOAD_TYPE == WV_SOCK)        sockUploadPathClose (wvUpPathId);#endif#if (WV_DEFAULT_UPLOAD_TYPE == WV_TSFSSOCK)        tsfsUploadPathClose (wvUpPathId);#endif#if (WV_DEFAULT_UPLOAD_TYPE == WV_FILE)        fileUploadPathClose (wvUpPathId);#endif        return (ERROR);        }    /*     * Upload the header immediately, because we are uploading continuously.     */    if (wvLogHeaderUpload (wvLogHeader, wvUpPathId) != OK)        {        logMsg ("wvOn: error uploading log header.\n",0,0,0,0,0,0);	wvUploadStop (wvUpTaskId);        rBuffDestroy (wvBufId);#if (WV_DEFAULT_UPLOAD_TYPE == WV_SOCK)        sockUploadPathClose (wvUpPathId);#endif#if (WV_DEFAULT_UPLOAD_TYPE == WV_TSFSSOCK)        tsfsUploadPathClose (wvUpPathId);#endif#if (WV_DEFAULT_UPLOAD_TYPE == WV_FILE)        fileUploadPathClose (wvUpPathId);#endif        return (ERROR);	}    /*     * Turn on event logging.     */    wvEvtClassSet (class);    wvEvtLogStart ();    return (OK);    }/******************************************************************************** wvOff - stop a typical instance of event logging and upload (Windview)** This routine stops event logging and uploading of events that was started* with wvOn().  First, event logging is stopped.  Next the event upload task * flushes the buffers and is then deleted.  Finally, the upload path is * closed and the event buffer is deleted.** The type of upload path is determined by the value of WV_DEFUALT_UPLOAD_TYPE,* set in usrWindview.c.  The upload task ID, buffer ID, and upload path ID are * stored in the 'wvUpTaskId', 'wvBufId', and 'wvUpPathId' globals, respectively.** RETURNS: N/A ** SEE ALSO: wvOn()**/void wvOff (void)    {    /* Stop event logging. */    wvEvtLogStop ();    /*      * Stop continuous upload of events.  This will block until the buffer     * is emptied.     */    if (wvUploadStop (wvUpTaskId) == ERROR)	{	logMsg ("wvOff: error killing upload task.\n", 0,0,0,0,0,0);	}    /* Close the upload path. */#if (WV_DEFAULT_UPLOAD_TYPE == WV_SOCK)        sockUploadPathClose (wvUpPathId);#endif#if (WV_DEFAULT_UPLOAD_TYPE == WV_TSFSSOCK)        tsfsUploadPathClose (wvUpPathId);#endif#if (WV_DEFAULT_UPLOAD_TYPE == WV_FILE)        fileUploadPathClose (wvUpPathId);#endif    /* Destroy the event buffer. */    if (wvBufId != NULL)        rBuffDestroy (wvBufId);    }/******************************************************************************** wvRBuffErrorHandler - error handler for the rBuffer created by  wvOn,wvOff** NOMANUAL**/int wvRBuffErrorHandler (void)    {    logMsg ("wvRBuffErrorHandler: error occurred.\n", 0,0,0,0,0,0);    return OK;    }#endif /* __INCusrWindviewc */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
a级精品国产片在线观看| 日韩欧美在线123| 91美女片黄在线观看91美女| 国产69精品一区二区亚洲孕妇| 韩国成人精品a∨在线观看| 美女视频一区二区| 国内偷窥港台综合视频在线播放| 久久www免费人成看片高清| 久久精品国产一区二区| 老司机午夜精品99久久| 94-欧美-setu| 综合激情成人伊人| 色天天综合久久久久综合片| 成人午夜免费视频| 夜夜嗨av一区二区三区四季av| 成人免费在线播放视频| 欧美国产一区二区在线观看| 国产精品少妇自拍| 亚洲理论在线观看| 亚洲国产aⅴ天堂久久| 亚洲成av人片一区二区三区| 亚洲电影一级片| 蜜臀精品一区二区三区在线观看| 奇米精品一区二区三区在线观看一| 婷婷国产在线综合| 久久av中文字幕片| 成人av网站在线观看免费| 91国内精品野花午夜精品| 欧美色图在线观看| 日韩欧美一区电影| 中文字幕中文字幕一区二区 | 国产精品美女久久久久aⅴ国产馆| 中文在线资源观看网站视频免费不卡| 亚洲三级久久久| 日韩—二三区免费观看av| 精品视频1区2区| 91免费在线视频观看| 国产人伦精品一区二区| 91久久免费观看| 成人app网站| 在线免费精品视频| 欧美一级日韩一级| 国产欧美日韩中文久久| 亚洲精品老司机| 美国三级日本三级久久99| 国产精品一区不卡| 欧美日韩一区国产| 久久无码av三级| 樱花草国产18久久久久| 美女视频网站黄色亚洲| 97久久精品人人爽人人爽蜜臀| 欧美疯狂性受xxxxx喷水图片| www日韩大片| 亚洲一区二区美女| 国产精品亚洲综合一区在线观看| 欧美探花视频资源| 中文字幕精品一区| 日韩av一区二| 91在线视频播放| 亚洲人午夜精品天堂一二香蕉| 日韩专区一卡二卡| 日韩 欧美一区二区三区| 亚洲男帅同性gay1069| 综合分类小说区另类春色亚洲小说欧美| 亚洲成人高清在线| 成人sese在线| 亚洲猫色日本管| 免费在线视频一区| 欧美自拍丝袜亚洲| 国产欧美日韩在线观看| 免费成人深夜小野草| 在线看日本不卡| 国产亚洲成av人在线观看导航| 亚洲成人自拍一区| 99精品国产91久久久久久 | 日韩一区二区视频在线观看| 国产精品麻豆久久久| 韩国欧美国产一区| 日韩欧美国产不卡| 亚洲国产精品尤物yw在线观看| 99在线视频精品| 亚洲国产成人午夜在线一区| 免费日本视频一区| 欧美肥大bbwbbw高潮| 一区二区三区欧美激情| 成人黄色免费短视频| 91精品国产色综合久久ai换脸| 亚洲欧洲制服丝袜| 亚洲一区视频在线观看视频| 国产69精品久久777的优势| 日韩欧美自拍偷拍| 日韩国产欧美在线播放| 欧美三级电影网| 亚洲一线二线三线久久久| 成人h版在线观看| 国产欧美日韩麻豆91| 国产麻豆精品theporn| 精品理论电影在线观看| 久久精品国产亚洲高清剧情介绍| 6080午夜不卡| 日韩不卡手机在线v区| 91.xcao| 日本视频在线一区| 日韩精品最新网址| 狠狠色伊人亚洲综合成人| 日韩欧美一区二区免费| 麻豆国产精品一区二区三区 | 色哟哟在线观看一区二区三区| 欧美韩国日本不卡| 成人av电影在线网| 亚洲男同1069视频| 捆绑调教美女网站视频一区| 蜜乳av一区二区三区| 777午夜精品视频在线播放| 亚洲国产一区二区三区青草影视| 99在线热播精品免费| 6080亚洲精品一区二区| 午夜精品爽啪视频| 欧美精品丝袜久久久中文字幕| 无码av免费一区二区三区试看| 欧美一区二区三区影视| 精品一区二区三区免费观看| 久久久三级国产网站| 成人黄色av电影| 一区二区久久久久久| 欧美日韩视频不卡| 成人丝袜高跟foot| 亚洲精品菠萝久久久久久久| 欧美亚洲丝袜传媒另类| 亚洲高清视频的网址| 欧美一区二区三区男人的天堂| 久久www免费人成看片高清| 久久人人爽爽爽人久久久| 99视频超级精品| 亚洲国产日产av| 日韩精品一区二区三区在线播放| 国产不卡在线播放| 亚洲六月丁香色婷婷综合久久 | 欧美一区二区三区四区在线观看| 亚洲成人黄色影院| 日韩伦理电影网| 欧美区一区二区三区| 成人激情免费网站| 日韩一区二区精品| 国产成人av影院| 亚洲男人天堂av网| 精品少妇一区二区三区免费观看 | 亚洲国产视频在线| 91精品国产福利在线观看 | 精品国产91亚洲一区二区三区婷婷 | 亚洲第一激情av| 久久久久久久精| 欧美调教femdomvk| 国产91精品入口| 首页综合国产亚洲丝袜| 国产欧美日韩视频在线观看| 欧美色图片你懂的| 成人一区在线观看| 婷婷国产在线综合| 成人免费一区二区三区视频| 欧美一区二区三区免费在线看| 成人午夜视频免费看| 天天色 色综合| 在线观看免费亚洲| 日韩制服丝袜先锋影音| 中文字幕一区在线观看视频| 日韩欧美国产一区在线观看| 91麻豆swag| 国产成人亚洲精品青草天美| 午夜精品一区二区三区免费视频 | 国产精品一区免费在线观看| 一区二区三区日韩欧美精品| 久久影院视频免费| 欧美日韩情趣电影| 色综合久久中文综合久久97| 国产一区二区伦理| 日韩和的一区二区| 一区二区三区四区精品在线视频 | 国产精品不卡在线| 久久蜜桃一区二区| 国产精品系列在线| 欧美一区二区大片| 欧美日韩精品一区二区| 91丨porny丨蝌蚪视频| 国产不卡视频一区二区三区| 久久国产福利国产秒拍| 亚洲成av人片一区二区梦乃| 亚洲卡通动漫在线| 中文字幕一区二区三区不卡在线| 久久一日本道色综合| 91精品国产色综合久久不卡蜜臀 | 欧美综合欧美视频| 91一区二区三区在线观看| 国产91精品久久久久久久网曝门 | 欧美精品久久99久久在免费线 | 欧美一区二区视频免费观看| 在线视频欧美区| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 亚洲第一激情av| 亚洲线精品一区二区三区|