Update README and add contrib dir
This commit is contained in:
70
contrib/tsn/model/tsn-aggregated-net-device.h
Normal file
70
contrib/tsn/model/tsn-aggregated-net-device.h
Normal file
@@ -0,0 +1,70 @@
|
||||
#ifndef TSN_AGGREGATED_NET_DEVICE_H
|
||||
#define TSN_AGGREGATED_NET_DEVICE_H
|
||||
|
||||
#include "ns3/tsn-net-device.h"
|
||||
|
||||
namespace ns3
|
||||
{
|
||||
|
||||
/**
|
||||
* \ingroup tsn
|
||||
* \class TsnAggregatedNetDevice
|
||||
* \brief A Device for aggregated Ethernet full duplex Link.
|
||||
*
|
||||
* This TsnAggregatedNetDevice class specializes the TsnAggregatedNetDevice
|
||||
* class. This class don't follow any standard. It was designed for experiment
|
||||
* 802.1CB features on end-station.
|
||||
*/
|
||||
|
||||
class TsnAggregatedNetDevice : public TsnNetDevice
|
||||
{
|
||||
public:
|
||||
/**
|
||||
* \brief Get the TypeId
|
||||
*
|
||||
* \return The TypeId for this class
|
||||
*/
|
||||
static TypeId GetTypeId();
|
||||
|
||||
/**
|
||||
* Construct a TsnAggregatedNetDevice
|
||||
*
|
||||
* This is the constructor for the TsnAggregatedNetDevice. It takes as a
|
||||
* parameter a pointer to the Node to which this device is connected,
|
||||
* as well as an optional DataRate object.
|
||||
*/
|
||||
TsnAggregatedNetDevice();
|
||||
|
||||
/**
|
||||
* Destroy a TsnAggregatedNetDevice
|
||||
*
|
||||
* This is the destructor for the TsnAggregatedNetDevice.
|
||||
*/
|
||||
~TsnAggregatedNetDevice();
|
||||
|
||||
// Delete copy constructor and assignment operator to avoid misuse
|
||||
TsnAggregatedNetDevice& operator=(const TsnAggregatedNetDevice&) = delete;
|
||||
TsnAggregatedNetDevice(const TsnAggregatedNetDevice&) = delete;
|
||||
|
||||
void AddNetDevice(Ptr<TsnNetDevice>);
|
||||
|
||||
bool SendFrom(Ptr<Packet> packet,
|
||||
const Address& source,
|
||||
const Address& dest,
|
||||
uint16_t ethertype);
|
||||
|
||||
protected:
|
||||
/**
|
||||
* \brief Dispose of the object
|
||||
*/
|
||||
void DoDispose();
|
||||
|
||||
bool MacRxPromiscCallback(Ptr<NetDevice> dev, Ptr<const Packet> packet, uint16_t protocol, const Address& sender, const Address& receiver, PacketType pType);
|
||||
|
||||
std::vector<Ptr<TsnNetDevice>> m_netDevices;
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif /* TSN_AGGREGATED_NET_DEVICE_H */
|
||||
Reference in New Issue
Block a user