#include "cast/common/channel/message_util.h"
#include <sstream>
#include <utility>
#include "build/build_config.h"
#include "cast/common/channel/virtual_connection.h"
#include "util/enum_name_table.h"
#include "util/json/json_serialization.h"
#include "util/json/json_value.h"
#include "util/osp_logging.h"
#if BUILDFLAG(IS_APPLE)
#include <TargetConditionals.h>
#endif
namespace openscreen::cast {
namespace {
CastMessage;
constexpr int kVirtualConnectSdkType = …;
constexpr int kVirtualConnectTypeLocal = …;
enum VirtualConnectPlatformValue { … };
constexpr VirtualConnectPlatformValue GetVirtualConnectPlatform() { … }
CastMessage MakeConnectionMessage(const std::string& source_id,
const std::string& destination_id) { … }
}
std::string ToString(AppAvailabilityResult availability) { … }
CastMessage MakeSimpleUTF8Message(const std::string& namespace_,
std::string payload) { … }
CastMessage MakeConnectMessage(const std::string& source_id,
const std::string& destination_id) { … }
CastMessage MakeCloseMessage(const std::string& source_id,
const std::string& destination_id) { … }
std::string MakeUniqueSessionId(const char* prefix) { … }
bool HasType(const Json::Value& object, CastMessageType type) { … }
std::string ToString(const CastMessage& message) { … }
constexpr EnumNameTable<CastMessageType, 25> kCastMessageTypeNames{ … };
const char* CastMessageTypeToString(CastMessageType type) { … }
const std::string& GetPayload(const CastMessage& message) { … }
}