#ifndef PC_SESSION_DESCRIPTION_H_
#define PC_SESSION_DESCRIPTION_H_
#include <stddef.h>
#include <stdint.h>
#include <algorithm>
#include <memory>
#include <string>
#include <type_traits>
#include <utility>
#include <vector>
#include "absl/memory/memory.h"
#include "absl/strings/string_view.h"
#include "api/media_types.h"
#include "api/rtp_parameters.h"
#include "api/rtp_transceiver_direction.h"
#include "api/rtp_transceiver_interface.h"
#include "media/base/codec.h"
#include "media/base/media_channel.h"
#include "media/base/media_constants.h"
#include "media/base/rid_description.h"
#include "media/base/stream_params.h"
#include "p2p/base/transport_description.h"
#include "p2p/base/transport_info.h"
#include "pc/media_protocol_names.h"
#include "pc/simulcast_description.h"
#include "rtc_base/checks.h"
#include "rtc_base/socket_address.h"
#include "rtc_base/system/rtc_export.h"
namespace cricket {
RtpHeaderExtensions;
const int kAutoBandwidth = …;
class AudioContentDescription;
class VideoContentDescription;
class SctpDataContentDescription;
class UnsupportedContentDescription;
class MediaContentDescription { … };
class RtpMediaContentDescription : public MediaContentDescription { … };
class AudioContentDescription : public RtpMediaContentDescription { … };
class VideoContentDescription : public RtpMediaContentDescription { … };
class SctpDataContentDescription : public MediaContentDescription { … };
class UnsupportedContentDescription : public MediaContentDescription { … };
enum class MediaProtocolType { … };
class RTC_EXPORT ContentInfo { … };
ContentNames;
class ContentGroup { … };
ContentInfos;
ContentGroups;
const ContentInfo* FindContentInfoByName(const ContentInfos& contents,
const std::string& name);
const ContentInfo* FindContentInfoByType(const ContentInfos& contents,
const std::string& type);
enum MsidSignaling { … };
class SessionDescription { … };
enum ContentSource { … };
}
#endif