mirror of
https://github.com/godotengine/webrtc-native.git
synced 2026-01-01 05:48:15 +03:00
Merge observers
This commit is contained in:
@@ -1,16 +0,0 @@
|
||||
#include "WebRTCLibPeerConnection.hpp"
|
||||
|
||||
using namespace godot_webrtc;
|
||||
|
||||
WebRTCLibPeerConnection::GodotCSDO::GodotCSDO(WebRTCLibPeerConnection *parent) {
|
||||
this->parent = parent;
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotCSDO::OnSuccess(webrtc::SessionDescriptionInterface *desc) {
|
||||
// serialize this offer and send it to the remote peer:
|
||||
std::string sdp; // sdp = session description protocol
|
||||
desc->ToString(&sdp);
|
||||
parent->queue_signal("session_description_created", 2, desc->type().c_str(), sdp.c_str());
|
||||
};
|
||||
|
||||
void WebRTCLibPeerConnection::GodotCSDO::OnFailure(const std::string &error){};
|
||||
@@ -1,48 +0,0 @@
|
||||
#include "WebRTCLibPeerConnection.hpp"
|
||||
#include "WebRTCLibDataChannel.hpp"
|
||||
|
||||
using namespace godot_webrtc;
|
||||
|
||||
WebRTCLibPeerConnection::GodotPCO::GodotPCO(WebRTCLibPeerConnection *parent) {
|
||||
this->parent = parent;
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnSignalingChange(webrtc::PeerConnectionInterface::SignalingState new_state) {
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnAddStream(rtc::scoped_refptr<webrtc::MediaStreamInterface> stream) {
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnRemoveStream(rtc::scoped_refptr<webrtc::MediaStreamInterface> stream) {
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnDataChannel(rtc::scoped_refptr<webrtc::DataChannelInterface> data_channel) {
|
||||
parent->queue_signal("data_channel_received", 1, WebRTCLibDataChannel::new_data_channel(data_channel));
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnRenegotiationNeeded() {
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnIceConnectionChange(webrtc::PeerConnectionInterface::IceConnectionState new_state) {
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnIceGatheringChange(webrtc::PeerConnectionInterface::IceGatheringState new_state) {
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnIceCandidate(const webrtc::IceCandidateInterface *candidate) {
|
||||
// Serialize the candidate and send it to the remote peer:
|
||||
|
||||
godot::Dictionary candidateSDP;
|
||||
|
||||
godot::String candidateSdpMidName = candidate->sdp_mid().c_str();
|
||||
int candidateSdpMlineIndexName = candidate->sdp_mline_index();
|
||||
std::string sdp;
|
||||
candidate->ToString(&sdp);
|
||||
godot::String candidateSdpName = sdp.c_str();
|
||||
|
||||
parent->queue_signal("ice_candidate_created",
|
||||
3,
|
||||
candidateSdpMidName,
|
||||
candidateSdpMlineIndexName,
|
||||
candidateSdpName);
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
#include "WebRTCLibPeerConnection.hpp"
|
||||
|
||||
using namespace godot_webrtc;
|
||||
|
||||
WebRTCLibPeerConnection::GodotSSDO::GodotSSDO(WebRTCLibPeerConnection *parent) {
|
||||
this->parent = parent;
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotSSDO::OnSuccess(){};
|
||||
|
||||
void WebRTCLibPeerConnection::GodotSSDO::OnFailure(const std::string &error){};
|
||||
53
src/WebRTCLibObservers.cpp
Normal file
53
src/WebRTCLibObservers.cpp
Normal file
@@ -0,0 +1,53 @@
|
||||
#include "WebRTCLibDataChannel.hpp"
|
||||
#include "WebRTCLibPeerConnection.hpp"
|
||||
|
||||
using namespace godot_webrtc;
|
||||
|
||||
// CreateSessionObseerver
|
||||
WebRTCLibPeerConnection::GodotCSDO::GodotCSDO(WebRTCLibPeerConnection *parent) {
|
||||
this->parent = parent;
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotCSDO::OnSuccess(webrtc::SessionDescriptionInterface *desc) {
|
||||
// serialize this offer and send it to the remote peer:
|
||||
std::string sdp; // sdp = session description protocol
|
||||
desc->ToString(&sdp);
|
||||
parent->queue_signal("session_description_created", 2, desc->type().c_str(), sdp.c_str());
|
||||
};
|
||||
|
||||
void WebRTCLibPeerConnection::GodotCSDO::OnFailure(const std::string &error){};
|
||||
|
||||
// SetSessionObseerver
|
||||
WebRTCLibPeerConnection::GodotSSDO::GodotSSDO(WebRTCLibPeerConnection *parent) {
|
||||
this->parent = parent;
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotSSDO::OnSuccess(){};
|
||||
void WebRTCLibPeerConnection::GodotSSDO::OnFailure(const std::string &error){};
|
||||
|
||||
// PeerConnectionObserver
|
||||
WebRTCLibPeerConnection::GodotPCO::GodotPCO(WebRTCLibPeerConnection *parent) {
|
||||
this->parent = parent;
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnDataChannel(rtc::scoped_refptr<webrtc::DataChannelInterface> data_channel) {
|
||||
parent->queue_signal("data_channel_received", 1, WebRTCLibDataChannel::new_data_channel(data_channel));
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnIceCandidate(const webrtc::IceCandidateInterface *candidate) {
|
||||
godot::Dictionary candidateSDP;
|
||||
godot::String candidateSdpMidName = candidate->sdp_mid().c_str();
|
||||
int candidateSdpMlineIndexName = candidate->sdp_mline_index();
|
||||
std::string sdp;
|
||||
candidate->ToString(&sdp);
|
||||
godot::String candidateSdpName = sdp.c_str();
|
||||
|
||||
parent->queue_signal("ice_candidate_created", 3, candidateSdpMidName, candidateSdpMlineIndexName, candidateSdpName);
|
||||
}
|
||||
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnSignalingChange(webrtc::PeerConnectionInterface::SignalingState new_state) {}
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnAddStream(rtc::scoped_refptr<webrtc::MediaStreamInterface> stream) {}
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnRemoveStream(rtc::scoped_refptr<webrtc::MediaStreamInterface> stream) {}
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnRenegotiationNeeded() {}
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnIceConnectionChange(webrtc::PeerConnectionInterface::IceConnectionState new_state) {}
|
||||
void WebRTCLibPeerConnection::GodotPCO::OnIceGatheringChange(webrtc::PeerConnectionInterface::IceGatheringState new_state) {}
|
||||
Reference in New Issue
Block a user