#ifndef CAST_COMMON_PUBLIC_RECEIVER_INFO_H_
#define CAST_COMMON_PUBLIC_RECEIVER_INFO_H_
#include <memory>
#include <string>
#include <utility>
#include "discovery/dnssd/public/dns_sd_instance.h"
#include "discovery/dnssd/public/dns_sd_instance_endpoint.h"
#include "platform/base/ip_address.h"
namespace openscreen::cast {
constexpr char kCastV2ServiceId[] = …;
constexpr char kCastV2DomainId[] = …;
constexpr char kUniqueIdKey[] = …;
constexpr char kVersionKey[] = …;
constexpr char kCapabilitiesKey[] = …;
constexpr char kStatusKey[] = …;
constexpr char kFriendlyNameKey[] = …;
constexpr char kModelNameKey[] = …;
enum ReceiverStatus { … };
constexpr uint8_t kCurrentCastVersion = …;
constexpr uint64_t kHasVideoOutput = …;
constexpr uint64_t kHasVideoInput = …;
constexpr uint64_t kHasAudioOutput = …;
constexpr uint64_t kHasAudioIntput = …;
constexpr uint64_t kIsDevModeEnabled = …;
constexpr uint64_t kNoCapabilities = …;
struct ReceiverInfo { … };
inline bool operator==(const ReceiverInfo& lhs, const ReceiverInfo& rhs) { … }
inline bool operator!=(const ReceiverInfo& lhs, const ReceiverInfo& rhs) { … }
discovery::DnsSdInstance ReceiverInfoToDnsSdInstance(
const ReceiverInfo& service);
ErrorOr<ReceiverInfo> DnsSdInstanceEndpointToReceiverInfo(
const discovery::DnsSdInstanceEndpoint& endpoint);
}
#endif