refer-op.h 1.48 KB
Newer Older
1 2
/*
 Linphone library
3
 Copyright (C) 2010-2018  Belledonne Communications SARL
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

 This program is free software; you can redistribute it and/or
 modify it under the terms of the GNU General Public License
 as published by the Free Software Foundation; either version 2
 of the License, or (at your option) any later version.

 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 */

20 21
#ifndef _L_SAL_REFER_OP_H_
#define _L_SAL_REFER_OP_H_
22 23 24 25 26

#include "sal/op.h"

LINPHONE_BEGIN_NAMESPACE

27
class SalReferOp : public SalOp {
28
public:
29
	SalReferOp (Sal *sal);
30

31 32
	int sendRefer (const SalAddress *referTo);
	int reply (SalReason reason);
33 34

private:
Ghislain MARY's avatar
Ghislain MARY committed
35
	void fillCallbacks () override;
36
	void processError ();
37

38 39 40 41
	static void processIoErrorCb (void *userCtx, const belle_sip_io_error_event_t *event);
	static void processResponseEventCb (void *userCtx, const belle_sip_response_event_t *event);
	static void processTimeoutCb (void *userCtx, const belle_sip_timeout_event_t *event);
	static void processRequestEventCb (void *userCtx, const belle_sip_request_event_t *event);
42 43 44 45
};

LINPHONE_END_NAMESPACE

46
#endif // ifndef _L_SAL_REFER_OP_H_