wip toxav voip model (only asink and outgoing call and missing reframer)
This commit is contained in:
35
src/tox_av_voip_model.hpp
Normal file
35
src/tox_av_voip_model.hpp
Normal file
@ -0,0 +1,35 @@
|
||||
#pragma once
|
||||
|
||||
#include <solanaceae/object_store/fwd.hpp>
|
||||
#include <solanaceae/contact/contact_model3.hpp>
|
||||
#include <solanaceae/tox_contacts/tox_contact_model2.hpp>
|
||||
#include "./frame_streams/voip_model.hpp"
|
||||
#include "./tox_av.hpp"
|
||||
|
||||
struct ToxAVVoIPModel : protected ToxAVEventI, public VoIPModelI {
|
||||
ObjectStore2& _os;
|
||||
ToxAVI& _av;
|
||||
Contact3Registry& _cr;
|
||||
ToxContactModel2& _tcm;
|
||||
|
||||
ToxAVVoIPModel(ObjectStore2& os, ToxAVI& av, Contact3Registry& cr, ToxContactModel2& tcm);
|
||||
~ToxAVVoIPModel(void);
|
||||
|
||||
void destroySession(ObjectHandle session);
|
||||
|
||||
void tick(void);
|
||||
|
||||
public: // voip model
|
||||
ObjectHandle enter(const Contact3 c, const DefaultConfig& defaults) override;
|
||||
bool accept(ObjectHandle session) override;
|
||||
bool leave(ObjectHandle session) override;
|
||||
|
||||
protected: // toxav events
|
||||
bool onEvent(const Events::FriendCall&) override;
|
||||
bool onEvent(const Events::FriendCallState&) override;
|
||||
bool onEvent(const Events::FriendAudioBitrate&) override;
|
||||
bool onEvent(const Events::FriendVideoBitrate&) override;
|
||||
bool onEvent(const Events::FriendAudioFrame&) override;
|
||||
bool onEvent(const Events::FriendVideoFrame&) override;
|
||||
};
|
||||
|
Reference in New Issue
Block a user