1/* 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); 26int blockingWrite_helper(int fd, void* data, size_t len); 27 28enum SocketWakeType {DONT_WAKE, WAKE_PARTIAL}; 29 30typedef enum { 31 RIL_TELEPHONY_SOCKET, 32 RIL_SAP_SOCKET 33} RIL_SOCKET_TYPE; 34 35typedef struct SocketListenParam { 36 RIL_SOCKET_ID socket_id; 37 int fdListen; 38 int fdCommand; 39 const char* processName; 40 struct ril_event* commands_event; 41 struct ril_event* listen_event; 42 void (*processCommandsCallback)(int fd, short flags, void *param); 43 RecordStream *p_rs; 44 RIL_SOCKET_TYPE type; 45} SocketListenParam; 46 47#endif 48