6#ifndef XR_TRAFFIC_MIXER_HELPER_H
7#define XR_TRAFFIC_MIXER_HELPER_H
9#include "traffic-generator-helper.h"
11#include "ns3/address.h"
12#include "ns3/application-container.h"
13#include "ns3/application.h"
14#include "ns3/node-container.h"
17#include "ns3/traffic-generator-3gpp-audio-data.h"
18#include "ns3/traffic-generator-3gpp-generic-video.h"
19#include "ns3/traffic-generator-3gpp-pose-control.h"
20#include "ns3/traffic-generator-ngmn-video.h"
21#include "ns3/traffic-generator-ngmn-voip.h"
22#include "ns3/traffic-generator.h"
48enum NrXrConfig GetXrTrafficType(
const std::string& item);
52std::string GetXrTrafficName(
const NrXrConfig& item);
57static inline std::istream&
58operator>>(std::istream& is, NrXrConfig& item)
60 std::string inputValue;
62 item = GetXrTrafficType(inputValue);
69static inline std::ostream&
70operator<<(std::ostream& os,
const NrXrConfig& item)
72 os << GetXrTrafficName(item);
76extern const std::map<NrXrConfig, std::list<TypeId>> XrPreconfig;
98 void AddStream(TypeId trafficGenerator);
104 void ConfigureXr(NrXrConfig xrTrafficType);
114 ApplicationContainer Install(std::string transportProtocol,
115 std::vector<Address>& remoteAddresses,
116 Ptr<Node> trafficGeneratorNode);
119 std::list<TypeId> m_trafficStreams;
static TypeId GetTypeId()
Get the type ID.