first changes for new network API

This commit is contained in:
Stephen Birarda 2015-07-02 16:18:44 -07:00
parent 448a0f01b6
commit 3a5701e02e
2 changed files with 65 additions and 62 deletions

View file

@ -921,22 +921,23 @@ void AudioClient::processReceivedSamples(const QByteArray& inputBuffer, QByteArr
void AudioClient::sendMuteEnvironmentPacket() { void AudioClient::sendMuteEnvironmentPacket() {
auto nodeList = DependencyManager::get<NodeList>(); auto nodeList = DependencyManager::get<NodeList>();
QByteArray mutePacket = nodeList->byteArrayWithPopulatedHeader(PacketTypeMuteEnvironment); int dataSize = sizeof(glm::vec3) + sizeof(float);
int headerSize = mutePacket.size();
NodeList::Packet mutePacket = nodeList->makePacket(PacketType::MuteEnvironment, dataSize);
const float MUTE_RADIUS = 50; const float MUTE_RADIUS = 50;
glm::vec3 currentSourcePosition = _positionGetter(); glm::vec3 currentSourcePosition = _positionGetter();
mutePacket.resize(mutePacket.size() + sizeof(glm::vec3) + sizeof(float));
memcpy(mutePacket.data() + headerSize, &currentSourcePosition, sizeof(glm::vec3)); memcpy(mutePacket.payload().data(), &currentSourcePosition, sizeof(glm::vec3));
memcpy(mutePacket.data() + headerSize + sizeof(glm::vec3), &MUTE_RADIUS, sizeof(float)); memcpy(mutePacket.payload() + sizeof(glm::vec3), &MUTE_RADIUS, sizeof(float));
// grab our audio mixer from the NodeList, if it exists // grab our audio mixer from the NodeList, if it exists
SharedNodePointer audioMixer = nodeList->soloNodeOfType(NodeType::AudioMixer); SharedNodePointer audioMixer = nodeList->soloNodeOfType(NodeType::AudioMixer);
if (audioMixer) { if (audioMixer) {
// send off this mute packet // send off this mute packet
nodeList->writeDatagram(mutePacket, audioMixer); nodeList->sendPacket(mutePacket, audioMixer);
} }
} }

View file

@ -26,60 +26,62 @@
// NOTE: if adding a new packet packetType, you can replace one marked usable or add at the end // NOTE: if adding a new packet packetType, you can replace one marked usable or add at the end
// NOTE: if you want the name of the packet packetType to be available for debugging or logging, update nameForPacketType() as well // NOTE: if you want the name of the packet packetType to be available for debugging or logging, update nameForPacketType() as well
enum PacketType { namespace PacketType {
PacketTypeUnknown, // 0 enum Value {
PacketTypeStunResponse, Unknown, // 0
PacketTypeDomainList, StunResponse,
PacketTypePing, DomainList,
PacketTypePingReply, Ping,
PacketTypeKillAvatar, // 5 PingReply,
PacketTypeAvatarData, KillAvatar, // 5
PacketTypeInjectAudio, AvatarData,
PacketTypeMixedAudio, InjectAudio,
PacketTypeMicrophoneAudioNoEcho, MixedAudio,
PacketTypeMicrophoneAudioWithEcho, // 10 MicrophoneAudioNoEcho,
PacketTypeBulkAvatarData, MicrophoneAudioWithEcho, // 10
PacketTypeSilentAudioFrame, BulkAvatarData,
PacketTypeEnvironmentData, SilentAudioFrame,
PacketTypeDomainListRequest, EnvironmentData,
PacketTypeRequestAssignment, // 15 DomainListRequest,
PacketTypeCreateAssignment, RequestAssignment, // 15
PacketTypeDomainConnectionDenied, CreateAssignment,
PacketTypeMuteEnvironment, DomainConnectionDenied,
PacketTypeAudioStreamStats, MuteEnvironment,
PacketTypeDataServerConfirm, // 20 AudioStreamStats,
PacketTypeDomainServerPathQuery, DataServerConfirm, // 20
PacketTypeDomainServerPathResponse, DomainServerPathQuery,
PacketTypeDomainServerAddedNode, DomainServerPathResponse,
PacketTypeIceServerPeerInformation, DomainServerAddedNode,
PacketTypeIceServerQuery, // 25 IceServerPeerInformation,
PacketTypeOctreeStats, IceServerQuery, // 25
PacketTypeJurisdiction, OctreeStats,
PacketTypeJurisdictionRequest, Jurisdiction,
JurisdictionRequest,
UNUSED_6, UNUSED_6,
UNUSED_7, // 30 UNUSED_7, // 30
UNUSED_8, UNUSED_8,
UNUSED_9, UNUSED_9,
PacketTypeNoisyMute, NoisyMute,
UNUSED_10, UNUSED_10,
PacketTypeAvatarIdentity, // 35 AvatarIdentity, // 35
PacketTypeAvatarBillboard, AvatarBillboard,
PacketTypeDomainConnectRequest, DomainConnectRequest,
PacketTypeDomainServerRequireDTLS, DomainServerRequireDTLS,
PacketTypeNodeJsonStats, NodeJsonStats,
PacketTypeEntityQuery, // 40 EntityQuery, // 40
PacketTypeEntityData, EntityData,
PacketTypeEntityAdd, EntityAdd,
PacketTypeEntityErase, EntityErase,
PacketTypeEntityEdit, EntityEdit,
PacketTypeOctreeDataNack, // 45 OctreeDataNack, // 45
PacketTypeStopNode, StopNode,
PacketTypeAudioEnvironment, AudioEnvironment,
PacketTypeEntityEditNack, EntityEditNack,
PacketTypeSignedTransactionPayment, SignedTransactionPayment,
PacketTypeIceServerHeartbeat, // 50 IceServerHeartbeat, // 50
PacketTypeUnverifiedPing, UnverifiedPing,
PacketTypeUnverifiedPingReply UnverifiedPingReply
};
}; };
typedef char PacketVersion; typedef char PacketVersion;