⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rvmegacoobjects.h

📁 h.248协议源码
💻 H
📖 第 1 页 / 共 5 页
字号:

/*$
{type:
	{name: RvMegacoDigitMapDescriptor}
	{include: rvmegacoobjects.h}
	{description:	{p: A digit map descriptor may contain a digit map, a previously defined digit map name,
		or a new digit map name and its definition.}}
	{methods:
		{method: RvMegacoDigitMapDescriptor *rvMegacoDigitMapDescriptorConstruct(RvMegacoDigitMapDescriptor *x, const char *name, const RvMegacoDigitMap *map);}
		{method: RvMegacoDigitMapDescriptor *rvMegacoDigitMapDescriptorConstructA(RvMegacoDigitMapDescriptor *x, const char *name, const RvMegacoDigitMap *map, RvAlloc *alloc);}
		{method: RvMegacoDigitMapDescriptor *rvMegacoDigitMapDescriptorConstructCopy(RvMegacoDigitMapDescriptor *d, const RvMegacoDigitMapDescriptor *s, RvAlloc *alloc);}
		{method: void rvMegacoDigitMapDescriptorDestruct(RvMegacoDigitMapDescriptor *x);}
		{method: RvMegacoDigitMapDescriptor *rvMegacoDigitMapDescriptorCopy(RvMegacoDigitMapDescriptor *d, const RvMegacoDigitMapDescriptor *s);}
		{method: const char *rvMegacoDigitMapDescriptorGetName(const RvMegacoDigitMapDescriptor *x);}
		{method: const RvMegacoDigitMap *rvMegacoDigitMapDescriptorGetDigitMap(const RvMegacoDigitMapDescriptor *x);}
		{method: RvBool rvMegacoDigitMapDescriptorIsSet(const RvMegacoDigitMapDescriptor *x);}
	}
	{notes:
		{note:  A digit map descriptor embedded in an events descriptor
			cannot contain both a name and a digit map.}
	}
}
$*/

typedef struct
{
	RvString name;
	RvMegacoDigitMap digitMap;
} RvMegacoDigitMapDescriptor;

RvMegacoDigitMapDescriptor *rvMegacoDigitMapDescriptorConstruct(RvMegacoDigitMapDescriptor *x, const char *name, const RvMegacoDigitMap *map);
RvMegacoDigitMapDescriptor *rvMegacoDigitMapDescriptorConstructA(RvMegacoDigitMapDescriptor *x, const char *name, const RvMegacoDigitMap *map, RvAlloc *alloc);
RvMegacoDigitMapDescriptor *rvMegacoDigitMapDescriptorConstructCopy(RvMegacoDigitMapDescriptor *d, const RvMegacoDigitMapDescriptor *s, RvAlloc *alloc);
void rvMegacoDigitMapDescriptorDestruct(RvMegacoDigitMapDescriptor *x);
RvMegacoDigitMapDescriptor *rvMegacoDigitMapDescriptorCopy(RvMegacoDigitMapDescriptor *d, const RvMegacoDigitMapDescriptor *s);
const char *rvMegacoDigitMapDescriptorGetName(const RvMegacoDigitMapDescriptor *x);
const RvMegacoDigitMap *rvMegacoDigitMapDescriptorGetDigitMap(const RvMegacoDigitMapDescriptor *x);
RvBool rvMegacoDigitMapDescriptorIsSet(const RvMegacoDigitMapDescriptor *x);


typedef unsigned int RvMegacoStreamId;

/*$
{type:
	{name: RvMegacoEvent}
	{include: rvmegacoobjects.h}
	{description: {p: An event.}}
	{methods:
		{method: RvMegacoEvent *rvMegacoEventConstruct(RvMegacoEvent *x, const RvMegacoPackageItem *name);}
		{method: RvMegacoEvent *rvMegacoEventConstructA(RvMegacoEvent *x, const RvMegacoPackageItem *name, RvAlloc *alloc);}
		{method: RvMegacoEvent *rvMegacoEventConstructCopy(RvMegacoEvent *d, const RvMegacoEvent *s, RvAlloc *alloc);}
		{method: void rvMegacoEventDestruct(RvMegacoEvent *x);}
		{method: RvMegacoEvent *rvMegacoEventCopy(RvMegacoEvent *d, const RvMegacoEvent *s);}
		{method: void rvMegacoEventSetStreamId(RvMegacoEvent *x, RvMegacoStreamId id);}
		{method: void rvMegacoEventSetParameter(RvMegacoEvent *x, const char *name, const RvMegacoParameterValue *value);}
		{method: const RvMegacoPackageItem *rvMegacoEventGetName(const RvMegacoEvent *x);}
		{method: RvMegacoStreamId rvMegacoEventGetStreamId(const RvMegacoEvent *x);}
		{method: const RvMegacoParameterValue *rvMegacoEventGetParameter(const RvMegacoEvent *x, const char *name);}
		{method: const RvMegacoParameterList *rvMegacoEventGetParameterList(const RvMegacoEvent *x);}
	}
}
$*/

typedef struct
{
	RvMegacoPackageItem name;
	RvMegacoStreamId streamId;
	RvMegacoParameterList parameters;
} RvMegacoEvent;

RvMegacoEvent *rvMegacoEventConstruct(RvMegacoEvent *x, const RvMegacoPackageItem *name);
RvMegacoEvent *rvMegacoEventConstructA(RvMegacoEvent *x, const RvMegacoPackageItem *name, RvAlloc *alloc);
RvMegacoEvent *rvMegacoEventConstructCopy(RvMegacoEvent *d, const RvMegacoEvent *s, RvAlloc *alloc);
void rvMegacoEventDestruct(RvMegacoEvent *x);
RvMegacoEvent *rvMegacoEventCopy(RvMegacoEvent *d, const RvMegacoEvent *s);
void rvMegacoEventSetStreamId(RvMegacoEvent *x, RvMegacoStreamId id);
void rvMegacoEventSetParameter(RvMegacoEvent *x, const char *name, const RvMegacoParameterValue *value);
const RvMegacoPackageItem *rvMegacoEventGetName(const RvMegacoEvent *x);
RvMegacoStreamId rvMegacoEventGetStreamId(const RvMegacoEvent *x);
const RvMegacoParameterValue *rvMegacoEventGetParameter(const RvMegacoEvent *x, const char *name);
const RvMegacoParameterList *rvMegacoEventGetParameterList(const RvMegacoEvent *x);



/*$
{type:
	{name: RvMegacoSignalType}
	{include: rvmegacoobjects.h}
	{description: 
		{p: Signal type:}
		{p: RV_MEGACOSIGNAL_DEFAULTTYPE - use the normal type for the given signal.}
		{p: RV_MEGACOSIGNAL_ONOFF - the signal lasts until it is turned off.}
		{p: RV_MEGACOSIGNAL_TIMEOUT - the signal lasts until it is turned off or a specific 
				period of time elapses}
		{p: RV_MEGACOSIGNAL_BRIEF - the signal duration is so short that it will stop on its 
				own unless a new signal is applied that causes it to stop}
	}
}
$*/

typedef enum
{
	RV_MEGACOSIGNAL_DEFAULTTYPE,
	RV_MEGACOSIGNAL_ONOFF,
	RV_MEGACOSIGNAL_TIMEOUT,
	RV_MEGACOSIGNAL_BRIEF
} RvMegacoSignalType;


/*$
{type:
	{name: RvMegacoSignalNotificationReasons}
	{include: rvmegacoobjects.h}
	{description: 
		{p: Set off reasons why a signal stops playing:}
		{p: RV_MEGACOSIGNAL_COMPLETED - the signal timed out.}
		{p: RV_MEGACOSIGNAL_GOTEVENT - the signal was interrupted by an event.}
		{p:	RV_MEGACOSIGNAL_NEWSIGDESCR - the signal was halted when a signals descriptor was replaced.}
		{p: RV_MEGACOSIGNAL_OTHERREASON - the signal stopped or never started for other reasons.}
	}
}
$*/

typedef enum
{
	RV_MEGACOSIGNAL_COMPLETED = 1,
	RV_MEGACOSIGNAL_GOTEVENT = 2,
	RV_MEGACOSIGNAL_NEWSIGDESCR = 4,
	RV_MEGACOSIGNAL_OTHERREASON = 8
} RvMegacoSignalNotificationReasons;


/*$
{type:
	{name: RvMegacoSignal}
	{include: rvmegacoobjects.h}
	{description: {p: A signal.}}
	{methods:
		{method: RvMegacoSignal *rvMegacoSignalConstruct(RvMegacoSignal *x, const RvMegacoPackageItem *name);}
		{method: RvMegacoSignal *rvMegacoSignalConstructA(RvMegacoSignal *x, const RvMegacoPackageItem *name, RvAlloc *alloc);}
		{method: RvMegacoSignal *rvMegacoSignalConstructCopy(RvMegacoSignal *d, const RvMegacoSignal *s, RvAlloc *alloc);}
		{method: void rvMegacoSignalDestruct(RvMegacoSignal *x);}
		{method: RvMegacoSignal *rvMegacoSignalCopy(RvMegacoSignal *d, const RvMegacoSignal *s);}
		{method: void rvMegacoSignalSetStreamId(RvMegacoSignal *x, RvMegacoStreamId id);}
		{method: void rvMegacoSignalSetParameter(RvMegacoSignal *x, const char *name, const RvMegacoParameterValue *value);}
		{method: void rvMegacoSignalSetType(RvMegacoSignal *x, RvMegacoSignalType type);}
		{method: void rvMegacoSignalSetDuration(RvMegacoSignal *x, unsigned int duration);}
		{method: void rvMegacoSignalSetNotifyReasons(RvMegacoSignal *x, RvMegacoSignalNotificationReasons reasons);}
		{method: void rvMegacoSignalSetKeepActiveFlag(RvMegacoSignal *x, RvBool enable);}
		{method: const RvMegacoPackageItem *rvMegacoSignalGetName(const RvMegacoSignal *x);}
		{method: RvMegacoStreamId rvMegacoSignalGetStreamId(const RvMegacoSignal *x);}
		{method: const RvMegacoParameterValue *rvMegacoSignalGetParameter(const RvMegacoSignal *x, const char *name);}
		{method: const RvMegacoParameterList *rvMegacoSignalGetParameterList(const RvMegacoSignal *x);}
		{method: RvMegacoSignalType rvMegacoSignalGetType(const RvMegacoSignal *x);}
		{method: unsigned int rvMegacoSignalGetDuration(const RvMegacoSignal *x);}
		{method: RvMegacoSignalNotificationReasons rvMegacoSignalGetNotifyReasons(const RvMegacoSignal *x);}
		{method: RvBool rvMegacoSignalGetKeepActiveFlag(const RvMegacoSignal *x);}
	}
}
$*/

typedef struct
{
	RvMegacoEvent event;
	RvMegacoSignalType type;
	RvMegacoSignalNotificationReasons reasons;
	unsigned int duration;
	RvBool keepActive;
} RvMegacoSignal;

RvMegacoSignal *rvMegacoSignalConstruct(RvMegacoSignal *x, const RvMegacoPackageItem *name);
RvMegacoSignal *rvMegacoSignalConstructA(RvMegacoSignal *x, const RvMegacoPackageItem *name, RvAlloc *alloc);
RvMegacoSignal *rvMegacoSignalConstructCopy(RvMegacoSignal *d, const RvMegacoSignal *s, RvAlloc *alloc);
void rvMegacoSignalDestruct(RvMegacoSignal *x);
RvMegacoSignal *rvMegacoSignalCopy(RvMegacoSignal *d, const RvMegacoSignal *s);
void rvMegacoSignalSetType(RvMegacoSignal *x, RvMegacoSignalType type);
void rvMegacoSignalSetDuration(RvMegacoSignal *x, unsigned int duration);
void rvMegacoSignalSetNotifyReasons(RvMegacoSignal *x, RvMegacoSignalNotificationReasons reasons);
void rvMegacoSignalSetKeepActiveFlag(RvMegacoSignal *x, RvBool enable);
RvMegacoSignalType rvMegacoSignalGetType(const RvMegacoSignal *x);
unsigned int rvMegacoSignalGetDuration(const RvMegacoSignal *x);
RvMegacoSignalNotificationReasons rvMegacoSignalGetNotifyReasons(const RvMegacoSignal *x);
RvBool rvMegacoSignalGetKeepActiveFlag(const RvMegacoSignal *x);

/*$
{function:
	{name: rvMegacoSignalSetStreamId}
	{class: RvMegacoSignal}
	{include: rvmegacoobjects.h}
	{description:
		{p: Sets the stream identifier of the signal object.}
	}
	{proto: void rvMegacoSignalSetStreamId(RvMegacoSignal *x, RvMegacoStreamId id);}
	{params:
		{param: {n:x} {d:The signal object.}}
		{param: {n:id} {d:The stream identifier.}}
	}
}
$*/
#define rvMegacoSignalSetStreamId(x, id) rvMegacoEventSetStreamId(&(x)->event, (id))

/*$
{function:
	{name: rvMegacoSignalSetParameter}
	{class: RvMegacoSignal}
	{include: rvmegacoobjects.h}
	{description:
		{p: Sets a parameter in the signal object.}
	}
	{proto: void rvMegacoSignalSetParameter(RvMegacoSignal *x, const char *name, const RvMegacoParameterValue *value);}
	{params:
		{param: {n:x} {d:The signal object.}}
		{param: {n:name} {d:The parameter name.}}
		{param: {n:value} {d:The parameter value.}}
	}
}
$*/
#define rvMegacoSignalSetParameter(x, name, value) rvMegacoEventSetParameter(&(x)->event, (name), (value))

/*$
{function:
	{name: rvMegacoSignalGetName}
	{class: RvMegacoSignal}
	{include: rvmegacoobjects.h}
	{description:
		{p: Gets the name of the signal object.}
	}
	{proto: const RvMegacoPackageItem *rvMegacoSignalGetName(const RvMegacoSignal *x);}
	{params:
		{param: {n:x} {d:The signal object.}}
	}
	{returns: The name.}
}
$*/
#define rvMegacoSignalGetName(x) rvMegacoEventGetName(&(x)->event)

/*$
{function:
	{name: rvMegacoSignalGetStreamId}
	{class: RvMegacoSignal}
	{include: rvmegacoobjects.h}
	{description:
		{p: Gets the stream identifier of the signal object.}
	}
	{proto: RvMegacoStreamId rvMegacoSignalGetStreamId(const RvMegacoSignal *x);}
	{params:
		{param: {n:x} {d:The signal object.}}
	}
	{returns: The stream identifier.}
}
$*/
#define rvMegacoSignalGetStreamId(x) rvMegacoEventGetStreamId(&(x)->event)

/*$
{function:
	{name: rvMegacoSignalGetParameter}
	{class: RvMegacoSignal}
	{include: rvmegacoobjects.h}
	{description:
		{p: Gets a parameter from the signal object.}
	}
	{proto: const RvMegacoParameterValue *rvMegacoSignalGetParameter(const RvMegacoSignal *x, const char *name);}
	{params:
		{param: {n:x} {d:The signal object.}}
		{param: {n:name} {d:The parameter name.}}
	}
	{returns: The parameter value.}
}
$*/
#define rvMegacoSignalGetParameter(x, name) rvMegacoEventGetParameter(&(x)->event, (name))

/*$
{function:
	{name: rvMegacoSignalGetParameterList}
	{class: RvMegacoSignal}
	{include: rvmegacoobjects.h}
	{description:
		{p: Gets the parameter list of the signal object.}
	}
	{proto: const RvMegacoParameterList *rvMegacoSignalGetParameterList(const RvMegacoSignal *x);}
	{params:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -