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

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

?? cmysqloutputvectormgr.h

?? OMNeT++的database設計代碼
?? H
字號:
//==========================================================================
//  MYSQLOUTPUTVECTORMGR.H - part of
//                     OMNeT++/OMNEST
//            Discrete System Simulation in C++
//
//==========================================================================

/*--------------------------------------------------------------*
  Copyright (C) 1992-2005 Andras Varga

  This file is distributed WITHOUT ANY WARRANTY. See the file
  `license' for details on this and other legal matters.
*--------------------------------------------------------------*/

#ifndef __MYSQLOUTPUTVECTORMGR_H
#define __MYSQLOUTPUTVECTORMGR_H

#include <omnetpp.h>
#include <mysql.h>


/**
 * An Output Vector Manager that writes into a MySQL database instead of
 * a .vec file.
 *
 * It expects to find two tables in the database: VECTOR and VECDATA.
 * VECTOR corresponds to the "vector" lines in the normal .vec files,
 * and VECDATA to the data lines.
 *
 * Note that the tables are created with the MyISAM engine. This is important,
 * because the InnoDB engine doesn't support INSERT DELAYED, which completely
 * ruins performance.
 *
 * <pre>
 * CREATE TABLE vrun (
 *      id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
 *      runnumber INT,
 *      network VARCHAR(80),
 *      date TIMESTAMP
 * ) ENGINE = MYISAM;
 *
 * CREATE TABLE vector (
 *      runid INT,
 *      id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
 *      module VARCHAR(200),
 *      name VARCHAR(80)
 * ) ENGINE = MYISAM;
 *
 * CREATE TABLE vecdata (
 *      vectorid INT,
 *      time DOUBLE PRECISION,
 *      value DOUBLE PRECISION
 * ) ENGINE = MYISAM;
 * </pre>
 *
 * For database configuration parameters, please refer to the documentation
 * of opp_mysql_connectToDB().
 *
 * Additional config parameters:
 *
 * <pre>
 * [General]
 * mysqloutputvectormanager-commit-freq = <integer> # COMMIT every n INSERTs, default=50
 * mysqloutputscalarmanager-connectprefix = <string> # look for connect parameters with the given prefix
 * </pre>
 *
 * @ingroup Envir
 */
class cMySQLOutputVectorManager : public cOutputVectorManager
{
  protected:
    struct sVectorData {
       int tuple;           // 1 or 2
       long id;             // vector ID
       opp_string modulename; // module of cOutVector object
       opp_string vectorname; // cOutVector object name
       bool initialised;    // true if the "label" line is already written out
       bool enabled;        // write to the output file can be enabled/disabled
       simtime_t starttime; // write begins at starttime
       simtime_t stoptime;  // write stops at stoptime
    };

    // the database connection
    MYSQL *mysql;

    // database id (vrun.id) of current run
    long runId;

    bool initialized;

    // we COMMIT after every commitFreq INSERT statements
    int commitFreq;
    int insertCount;

    // prepared statements and their parameter bindings
    MYSQL_STMT *insertVectorStmt;
    MYSQL_STMT *insertVecdataStmt;
    MYSQL_BIND insVectorBind[3];
    MYSQL_BIND insVecdataBind[3];

    // these variables are bound to the above bind parameters
    int runidBuf;
    char moduleBuf[201];
    unsigned long moduleLength;
    char nameBuf[81];
    unsigned long nameLength;
    int vectoridBuf;
    double timeBuf;
    double valueBuf;

  protected:
    void openDB();
    void closeDB();
    void commitDB();
    void insertRunIntoDB();
    void initVector(sVectorData *vp);
    virtual sVectorData *createVectorData();

  public:
    /** @name Constructors, destructor */
    //@{

    /**
     * Constructor.
     */
    explicit cMySQLOutputVectorManager();

    /**
     * Destructor. Closes the output file if it is still open.
     */
    virtual ~cMySQLOutputVectorManager();
    //@}

    /** @name Redefined cOutputVectorManager member functions. */
    //@{

    /**
     * Deletes output vector file if exists (left over from previous runs).
     * The file is not yet opened, it is done inside registerVector() on demand.
     */
    virtual void startRun();

    /**
     * Closes the output file.
     */
    virtual void endRun();

    /**
     * Registers a vector and returns a handle.
     */
    virtual void *registerVector(const char *modulename, const char *vectorname, int tuple);

    /**
     * Deregisters the output vector.
     */
    virtual void deregisterVector(void *vechandle);

    /**
     * Writes the (time, value) pair into the output file.
     */
    virtual bool record(void *vectorhandle, simtime_t t, double value);

    /**
     * Writes the (time, value1, value2) triplet into the output file.
     */
    virtual bool record(void *vectorhandle, simtime_t t, double value1, double value2);

    /**
     * Returns NULL, because this class doesn't use a file.
     */
    const char *fileName() const {return NULL;}

    /**
     * Performs a database commit.
     */
    virtual void flush();
    //@}
};

#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
婷婷夜色潮精品综合在线| 亚洲在线免费播放| 在线一区二区三区做爰视频网站| 国产精品动漫网站| 欧美日韩一区久久| 国产综合一区二区| 亚洲免费观看高清在线观看| 欧美色窝79yyyycom| 免费一级欧美片在线观看| 国产精品系列在线| 在线播放一区二区三区| 国产91丝袜在线播放| 一区二区在线观看视频在线观看| 欧美精品 国产精品| 国产不卡视频在线播放| 亚洲综合在线免费观看| 337p粉嫩大胆噜噜噜噜噜91av| av在线这里只有精品| 美女脱光内衣内裤视频久久网站 | wwwwxxxxx欧美| 欧美亚洲综合另类| 成人黄页毛片网站| 国产综合色视频| 日本在线观看不卡视频| 亚洲欧美经典视频| 中文一区在线播放| 精品粉嫩超白一线天av| 欧美女孩性生活视频| 94色蜜桃网一区二区三区| 国产乱理伦片在线观看夜一区| 一区二区三区在线视频观看 | 欧美日韩一区二区三区在线| 成人高清免费观看| 国产成人av电影在线| 久久不见久久见中文字幕免费| 婷婷六月综合亚洲| 亚洲成人一二三| 一区二区三区四区中文字幕| 国产精品灌醉下药二区| 日本一区二区高清| 国产日韩欧美a| 欧美激情一区二区| 欧美激情综合五月色丁香小说| ww亚洲ww在线观看国产| 欧美成人一级视频| 久久久夜色精品亚洲| 亚洲精品在线网站| 欧美激情在线观看视频免费| 国产精品欧美经典| 自拍偷拍国产精品| 一区二区三区在线免费观看| 亚洲欧美日韩一区二区三区在线观看| 中文字幕乱码日本亚洲一区二区 | 久久国产精品无码网站| 毛片av一区二区| 国产成人精品三级麻豆| 成人综合婷婷国产精品久久蜜臀| 成人免费电影视频| 91在线国内视频| 欧美一区二区三区免费观看视频 | 国产宾馆实践打屁股91| av不卡在线播放| 欧美日韩一区二区在线观看视频 | 三级影片在线观看欧美日韩一区二区| 亚洲国产毛片aaaaa无费看| 天天操天天色综合| 国产精品亚洲一区二区三区妖精| 波多野结衣中文字幕一区| 在线观看免费亚洲| 欧美mv日韩mv国产网站| 中文字幕一区二区三区不卡在线 | 日韩一区二区精品| 中文字幕av一区二区三区免费看 | av午夜精品一区二区三区| 欧美日本一区二区| 国产精品拍天天在线| 日产精品久久久久久久性色| 不卡电影一区二区三区| 亚洲永久免费视频| 久久精品噜噜噜成人88aⅴ| 95精品视频在线| 国产网站一区二区| 日韩精品91亚洲二区在线观看| 精品一区二区三区欧美| 在线观看三级视频欧美| 国产欧美精品日韩区二区麻豆天美| 亚洲一区二区欧美| www.欧美亚洲| 国产人成亚洲第一网站在线播放| 亚洲国产成人tv| 91蝌蚪porny| 国产精品嫩草影院com| 国产精品456露脸| 日韩一二三区视频| 亚洲超碰97人人做人人爱| 99re这里都是精品| 国产精品美女久久久久久久久久久 | 亚洲黄色av一区| av一区二区三区四区| 日本一区二区视频在线| 九色porny丨国产精品| 欧美一级欧美一级在线播放| 亚洲电影在线免费观看| 欧美色爱综合网| 亚洲国产人成综合网站| 欧美日韩综合不卡| 亚洲国产精品精华液网站| 色天天综合色天天久久| 一区二区三区**美女毛片| 一本色道a无线码一区v| 亚洲精品日韩一| 在线欧美日韩精品| 亚洲成av人片一区二区三区| 欧美日韩亚洲综合一区| 日本aⅴ亚洲精品中文乱码| 日韩亚洲电影在线| 国产曰批免费观看久久久| 久久美女艺术照精彩视频福利播放 | 色婷婷亚洲精品| 亚洲国产视频网站| 精品国产第一区二区三区观看体验| 精品伊人久久久久7777人| 国产三级三级三级精品8ⅰ区| 成人免费视频视频| 亚洲美女视频在线观看| 欧美一区二区福利在线| 国产久卡久卡久卡久卡视频精品| 亚洲视频资源在线| 欧美精品123区| 高清不卡一区二区| 午夜精品成人在线视频| 日韩精品中文字幕在线一区| a4yy欧美一区二区三区| 午夜视频在线观看一区二区| 久久久久久久久久久久久女国产乱| 成人动漫中文字幕| 免费精品视频在线| 综合久久久久综合| 欧美一区二区日韩| 92国产精品观看| 极品美女销魂一区二区三区免费 | 久久人人爽爽爽人久久久| 色偷偷成人一区二区三区91| 精品一区二区三区免费| 夜夜爽夜夜爽精品视频| 国产欧美日韩视频一区二区 | 国产一区二区三区香蕉| 亚洲一区二区三区小说| 日本一区二区三区久久久久久久久不| 欧美性一二三区| 成人福利在线看| 国产一区二区三区在线观看免费| 亚洲国产精品尤物yw在线观看| 国产精品美女视频| 久久久久久久久岛国免费| 欧美不卡视频一区| 欧美精品久久99久久在免费线| 91国在线观看| 99久久精品免费精品国产| 国产.欧美.日韩| 国产一区二区三区精品视频 | 中文字幕一区二区三区精华液| 欧美精品一区二区在线观看| 日韩一区二区三免费高清| 91精品国产麻豆国产自产在线| 欧美日韩性生活| 欧美日韩精品免费观看视频 | wwwwxxxxx欧美| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 国产精品久久久久久福利一牛影视 | 成人av动漫在线| 国产清纯白嫩初高生在线观看91 | 91一区一区三区| 91免费看片在线观看| 色偷偷久久一区二区三区| 色婷婷激情综合| 欧美中文字幕一区二区三区亚洲| 91亚洲大成网污www| 91日韩在线专区| 日本精品视频一区二区| 欧美日韩一区二区三区高清| 国产亚洲午夜高清国产拍精品 | 欧美人动与zoxxxx乱| 欧美一区二区黄| 久久久精品综合| 中文字幕综合网| 性久久久久久久久久久久| 日韩和欧美一区二区三区| 久草精品在线观看| 国产精品白丝av| 欧美色中文字幕| 日本一区二区视频在线| 亚洲一级片在线观看| 久热成人在线视频| 91网站视频在线观看| 日韩欧美一二区| 国产一区二区在线观看视频| 91色在线porny| 欧美精品一区二区三区在线播放 | 91在线视频免费91|