LeechCraft Azoth
0.6.70-13907-g785196c688
Modular multiprotocol IM plugin for LeechCraft
imediacall.h
Go to the documentation of this file.
1
/**********************************************************************
2
* LeechCraft - modular cross-platform feature rich internet client.
3
* Copyright (C) 2006-2014 Georg Rudoy
4
*
5
* Boost Software License - Version 1.0 - August 17th, 2003
6
*
7
* Permission is hereby granted, free of charge, to any person or organization
8
* obtaining a copy of the software and accompanying documentation covered by
9
* this license (the "Software") to use, reproduce, display, distribute,
10
* execute, and transmit the Software, and to prepare derivative works of the
11
* Software, and to permit third-parties to whom the Software is furnished to
12
* do so, all subject to the following:
13
*
14
* The copyright notices in the Software and this entire statement, including
15
* the above license grant, this restriction and the following disclaimer,
16
* must be included in all copies of the Software, in whole or in part, and
17
* all derivative works of the Software, unless such copies or derivative
18
* works are solely in the form of machine-executable object code generated by
19
* a source language processor.
20
*
21
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23
* FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
24
* SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
25
* FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
26
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
27
* DEALINGS IN THE SOFTWARE.
28
**********************************************************************/
29
30
#ifndef PLUGINS_AZOTH_INTERFACES_IMEDIACALL_H
31
#define PLUGINS_AZOTH_INTERFACES_IMEDIACALL_H
32
#include <QtPlugin>
33
#include <QIODevice>
34
35
class
QIODevice;
36
class
QAudioFormat;
37
38
namespace
LC
39
{
40
namespace
Azoth
41
{
42
class
IMediaCall
43
{
44
public
:
45
virtual
~IMediaCall
() {}
46
47
enum
Direction
48
{
49
DIn
,
50
DOut
51
};
52
53
enum
State
54
{
55
SConnecting
,
56
SActive
,
57
SDisconnecting
,
58
SFinished
59
};
60
61
virtual
Direction
GetDirection
()
const
= 0;
62
63
virtual
QString
GetSourceID
()
const
= 0;
64
65
virtual
void
Accept
() = 0;
66
67
virtual
void
Hangup
() = 0;
68
69
virtual
QIODevice*
GetAudioDevice
() = 0;
70
71
virtual
QAudioFormat
GetAudioReadFormat
()
const
= 0;
72
73
virtual
QAudioFormat
GetAudioWriteFormat
()
const
= 0;
74
75
virtual
QIODevice*
GetVideoDevice
() = 0;
76
protected
:
77
virtual
void
stateChanged
(
State
) = 0;
78
79
virtual
void
audioModeChanged
(QIODevice::OpenMode) = 0;
80
81
virtual
void
readFormatChanged
() = 0;
82
83
virtual
void
writeFormatChanged
() = 0;
84
};
85
}
86
}
87
88
Q_DECLARE_INTERFACE (
LC::Azoth::IMediaCall
,
89
"org.Deviant.LeechCraft.Azoth.IMediaCall/1.0"
)
90
91
#endif
LC::Azoth::IMediaCall::GetAudioDevice
virtual QIODevice * GetAudioDevice()=0
LC::Azoth::IMediaCall::SActive
@ SActive
Definition:
imediacall.h:56
LC::Azoth::IMediaCall::stateChanged
virtual void stateChanged(State)=0
LC::Azoth::IMediaCall::SFinished
@ SFinished
Definition:
imediacall.h:58
LC::Azoth::IMediaCall::GetSourceID
virtual QString GetSourceID() const =0
LC::Azoth::IMediaCall::GetDirection
virtual Direction GetDirection() const =0
LC::Azoth::IMediaCall::SConnecting
@ SConnecting
Definition:
imediacall.h:55
LC::Azoth::IMediaCall::Hangup
virtual void Hangup()=0
LC::Azoth::IMediaCall::DIn
@ DIn
Definition:
imediacall.h:49
LC::Azoth::IMediaCall::State
State
Definition:
imediacall.h:54
LC::Azoth::IMediaCall::GetVideoDevice
virtual QIODevice * GetVideoDevice()=0
LC::Azoth::IMediaCall::SDisconnecting
@ SDisconnecting
Definition:
imediacall.h:57
LC::Azoth::IMediaCall::readFormatChanged
virtual void readFormatChanged()=0
LC::Azoth::IMediaCall::GetAudioReadFormat
virtual QAudioFormat GetAudioReadFormat() const =0
LC::Azoth::IMediaCall::writeFormatChanged
virtual void writeFormatChanged()=0
LC::Azoth::IMediaCall
Definition:
imediacall.h:43
LC
Definition:
activityinfo.h:35
LC::Azoth::IMediaCall::DOut
@ DOut
Definition:
imediacall.h:50
LC::Azoth::IMediaCall::GetAudioWriteFormat
virtual QAudioFormat GetAudioWriteFormat() const =0
LC::Azoth::IMediaCall::~IMediaCall
virtual ~IMediaCall()
Definition:
imediacall.h:45
LC::Azoth::IMediaCall::Direction
Direction
Definition:
imediacall.h:48
LC::Azoth::IMediaCall::audioModeChanged
virtual void audioModeChanged(QIODevice::OpenMode)=0
LC::Azoth::IMediaCall::Accept
virtual void Accept()=0
src
plugins
azoth
interfaces
azoth
imediacall.h
Generated by
1.8.18