All pastes #2046122 Raw Edit

Untitled

public cpp v1 · immutable
#2046122 ·published 2011-04-13 20:05 UTC
rendered paste body
//// Copyright 2004 Andras Varga//// This library is free software, you can redistribute it and/or modify// it under  the terms of the GNU Lesser General Public License// as published by the Free Software Foundation;// either version 2 of the License, or any later version.// The library is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.// See the GNU Lesser General Public License for more details.//#ifndef __INET_TCPSESSIONAPP_H#define __INET_TCPSESSIONAPP_H#include <vector>#include <omnetpp.h>#include <string>#include "TCPSocket.h"/** * Single-connection TCP application. */class INET_API TCPSessionApp : public cSimpleModule{//  private://    static std::vector<std::string> idTable;  protected:    struct Command    {        simtime_t tSend;        int numBytes;    };    typedef std::vector<Command> CommandVector;    CommandVector commands;    TCPSocket socket;    // statistics    int packetsRcvd;    long bytesRcvd;    long bytesSent;    int indicationsRcvd;  public:    TCPSessionApp() : cSimpleModule(65536) {}    static std::vector<std::string> idTable;    const char * getNextId() {    	EV << "\n@@2@@@@@@@";		srand ( time(NULL) );		EV << "\n1@@@@@@@";		int nextelement = rand() * (idTable.size());		EV << "\n2@@@@@@";		std::string nextID = idTable[nextelement];		EV << "\n3@@@@@" << nextID;		idTable.erase(idTable.begin()+nextelement);    	return nextID.c_str();    }  protected:    virtual void parseScript(const char *script);    virtual void waitUntil(simtime_t t);    virtual void count(cMessage *msg);    virtual void activity();    virtual void finish();};#endif