📄 msig.h
字号:
/*
* Copyright (C) Obigo AB, 2002-2005.
* All rights reserved.
*
* This software is covered by the license agreement between
* the end user and Obigo AB, and may be
* used and copied only in accordance with the terms of the
* said agreement.
*
* Obigo AB assumes no responsibility or
* liability for any errors or inaccuracies in this software,
* or any consequential, incidental or indirect damage arising
* out of the use of the software.
*
*/
#ifndef _MSIG_H
#define _MSIG_H
typedef enum
{
M_FSM_MMH_COPY,
M_FSM_MMH_CREATE,
M_FSM_MMH_FETCH,
M_FSM_MMH_IMPORT,
M_FSM_MSR_SEND,
M_FSM_MSR_RECEIVE,
M_FSM_MSR_NOTIFY,
M_FSM_COH_WAP,
M_FSM_COH_GET,
M_FSM_COH_PUSH_RECEIVE,
M_FSM_COH_POST,
M_FSM_CORE_CONFIG,
M_FSM_CORE_MAIN,
M_FSM_CREATE_SMIL,
M_FSM_SMIL_PARSE_HANDLER,
M_FSM_MAX_REGS
} MmsStateMachine;
#define MMS_MAX_SIG_PER_FSM 100
typedef enum
{
MMS_SIG_COMMON_BASE = 10000,
MMS_SIG_COMMON_TIMER_EXPIRED = (MMS_SIG_COMMON_BASE + 1)
} MmsSignalId;
#define M_SIGNAL_SENDTO(d, sig) \
mSignalSendTo((MmsStateMachine)(d), (int)(sig), 0L, 0UL, 0UL, NULL)
#define M_SIGNAL_SENDTO_I(d, sig, i) \
mSignalSendTo((MmsStateMachine)(d), (int)(sig), (long)i, 0UL, 0UL, NULL)
#define M_SIGNAL_SENDTO_IU(d, sig, i, u) \
mSignalSendTo((MmsStateMachine)(d), (int)(sig), (long)(i), \
(unsigned long)(u), 0UL, NULL)
#define M_SIGNAL_SENDTO_IUU(d, sig, i, u1, u2) \
mSignalSendTo((MmsStateMachine)(d), (int)(sig), (long)(i), \
(unsigned long)(u1), (unsigned long)(u2), NULL)
#define M_SIGNAL_SENDTO_IUP(d, sig, i, u, p) \
mSignalSendTo((MmsStateMachine)(d), (int)(sig), (long)(i), \
(unsigned long)(u), 0UL, (p))
#define M_SIGNAL_SENDTO_IUUP(d, sig, i, u1, u2, p) \
mSignalSendTo((MmsStateMachine)(d), (int)(sig), (long)(i), \
(unsigned long)(u1), (unsigned long)(u2), (p))
#define M_SIGNAL_SENDTO_IP(d, sig, i, p) \
mSignalSendTo((MmsStateMachine)(d), (int)(sig), (long)(i), 0UL, \
0UL, (p))
#define M_SIGNAL_SENDTO_U(d, sig, u) \
mSignalSendTo((MmsStateMachine)(d), (int)(sig), 0L, (unsigned long)(u), \
0UL, NULL)
#define M_SIGNAL_SENDTO_UU(d, sig, u1, u2) \
mSignalSendTo((MmsStateMachine)(d), (int)(sig), 0L, \
(unsigned long)(u1), (unsigned long)(u2), NULL)
#define M_SIGNAL_SENDTO_UUP(d, sig, u1, u2, p) \
mSignalSendTo((MmsStateMachine)(d), (int)(sig), 0L, \
(unsigned long)(u1), (unsigned long)(u2), (p))
#define M_SIGNAL_SENDTO_UP(d, sig, u, p) \
mSignalSendTo((MmsStateMachine)(d), (int)(sig), 0L, \
(unsigned long)(u), 0UL, (p))
#define M_SIGNAL_SENDTO_P(d, sig, p) \
mSignalSendTo((MmsStateMachine)(d), (int)(sig), 0L, 0UL, 0UL, (p))
typedef struct MmsSignalStruct
{
struct MmsSignalStruct *next;
MmsStateMachine dst;
int type;
long i_param;
unsigned long u_param1;
unsigned long u_param2;
void *p_param;
} MmsSignal;
typedef void MSignalFunction (MmsSignal *);
void mSignalFlush(MmsStateMachine dst, int id, long i_param,
unsigned long u_param1, unsigned long u_param2, const void *p_param);
void mSignalInit(void);
void mSignalTerminate(void);
void mSignalProcess(void);
int mSignalQueueIsEmpty(void);
void mSignalDelete(MmsSignal *sig);
void mSignalDeregister(MmsStateMachine dst);
void mSignalRegisterDst(MmsStateMachine dst, MSignalFunction *f);
MmsSignal *mSignalSendTo(MmsStateMachine dst, int sig, long i_param,
unsigned long u_param1, unsigned long u_param2, void *p_param);
void mSignalPrepend(MmsSignal *sig);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -