54 lines
1.2 KiB
C++
54 lines
1.2 KiB
C++
#ifndef STREAM_IDENTIFICATION_FUNCTION_H
|
|
#define STREAM_IDENTIFICATION_FUNCTION_H
|
|
|
|
#include "ns3/object.h"
|
|
|
|
#include "ns3/packet.h"
|
|
#include "ns3/nstime.h"
|
|
|
|
namespace ns3
|
|
{
|
|
|
|
class StreamIdentificationFunction : public Object
|
|
{
|
|
public:
|
|
/**
|
|
* \brief Get the TypeId
|
|
*
|
|
* \return The TypeId for this class
|
|
*/
|
|
static TypeId GetTypeId();
|
|
|
|
/**
|
|
* \brief Create a StreamIdentificationFunction
|
|
*/
|
|
StreamIdentificationFunction();
|
|
|
|
/**
|
|
* Destroy a StreamIdentificationFunction
|
|
*
|
|
* This is the destructor for the StreamIdentificationFunction.
|
|
*/
|
|
~StreamIdentificationFunction();
|
|
|
|
// Delete copy constructor and assignment operator to avoid misuse
|
|
StreamIdentificationFunction& operator=(const StreamIdentificationFunction&) = delete;
|
|
StreamIdentificationFunction(const StreamIdentificationFunction&) = delete;
|
|
|
|
virtual bool Match(Ptr<Packet> p);
|
|
virtual void GetActiveUpdate(Ptr<Packet> p);
|
|
|
|
Time GetHardwareLatency();
|
|
|
|
protected:
|
|
|
|
private:
|
|
Time m_minLatencyOverhead;
|
|
Time m_maxLatencyOverhead;
|
|
|
|
|
|
};
|
|
|
|
}
|
|
#endif /* STREAM_IDENTIFICATION_FUNCTION_H */
|