private void RegisterCallbacks()
        {
            localDataChannelReadyDelegate = new LocalDataChannelReadyInternalDelegate(
                RaiseLocalDataChannelReady);
            RegisterOnLocalDataChannelReady(mPeerConnectionId, localDataChannelReadyDelegate);

            dataFromDataChannelReadyDelegate = new DataFromDataChannelReadyInternalDelegate(
                RaiseDataFromDataChannelReady);
            RegisterOnDataFromDataChannelReady(mPeerConnectionId, dataFromDataChannelReadyDelegate);

            failureMessageDelegate = new FailureMessageInternalDelegate(RaiseFailureMessage);
            RegisterOnFailure(mPeerConnectionId, failureMessageDelegate);

            audioBusReadyDelegate = new AudioBusReadyInternalDelegate(RaiseAudioBusReady);
            RegisterOnAudioBusReady(mPeerConnectionId, audioBusReadyDelegate);

            FramgeGate_RecievedDelegate = new RecievedRGBFrameInternalDelegate(RaiseRGBVideoFrameReady);
            FrameGate_RegisterOnRecieved(mPeerConnectionId, FramgeGate_RecievedDelegate);

            localSdpReadytoSendDelegate = new LocalSdpReadytoSendInternalDelegate(
                RaiseLocalSdpReadytoSend);
            RegisterOnLocalSdpReadytoSend(mPeerConnectionId, localSdpReadytoSendDelegate);

            iceCandiateReadytoSendDelegate =
                new IceCandiateReadytoSendInternalDelegate(RaiseIceCandiateReadytoSend);
            RegisterOnIceCandiateReadytoSend(
                mPeerConnectionId, iceCandiateReadytoSendDelegate);
        }
 private static extern bool FrameGate_RegisterOnRecieved(int peerConnectionId,
                                                         RecievedRGBFrameInternalDelegate callback);