blob: 8e15d6548b56ea930e746859d4d3136aa4b824b6 [file] [log] [blame]
Dheeraj Shettycc231012014-07-02 21:27:57 +02001/*
2* Copyright (C) 2014 The Android Open Source Project
3*
4* Licensed under the Apache License, Version 2.0 (the "License");
5* you may not use this file except in compliance with the License.
6* You may obtain a copy of the License at
7*
8* http://www.apache.org/licenses/LICENSE-2.0
9*
10* Unless required by applicable law or agreed to in writing, software
11* distributed under the License is distributed on an "AS IS" BASIS,
12* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13* See the License for the specific language governing permissions and
14* limitations under the License.
15*/
16
17#ifndef RIL_EX_H_INCLUDED
18#define RIL_EX_H_INCLUDED
19
20#include <telephony/ril.h>
21#include <telephony/record_stream.h>
22
23#define NUM_ELEMS_SOCKET(a) (sizeof (a) / sizeof (a)[0])
24
25void rilEventAddWakeup_helper(struct ril_event *ev);
26void listenCallback_helper(int fd, short flags, void *param);
27int blockingWrite_helper(int fd, void* data, size_t len);
28
29enum SocketWakeType {DONT_WAKE, WAKE_PARTIAL};
30
31typedef enum {
32 RIL_TELEPHONY_SOCKET,
33 RIL_SAP_SOCKET
34} RIL_SOCKET_TYPE;
35
36typedef struct SocketListenParam {
37 RIL_SOCKET_ID socket_id;
38 int fdListen;
39 int fdCommand;
40 char* processName;
41 struct ril_event* commands_event;
42 struct ril_event* listen_event;
43 void (*processCommandsCallback)(int fd, short flags, void *param);
44 RecordStream *p_rs;
45 RIL_SOCKET_TYPE type;
46} SocketListenParam;
47
48#endif