本文整理汇总了C++中CMultiXAppMsg::AllocateL7XMsg方法的典型用法代码示例。如果您正苦于以下问题:C++ CMultiXAppMsg::AllocateL7XMsg方法的具体用法?C++ CMultiXAppMsg::AllocateL7XMsg怎么用?C++ CMultiXAppMsg::AllocateL7XMsg使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CMultiXAppMsg
的用法示例。
在下文中一共展示了CMultiXAppMsg::AllocateL7XMsg方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Reply
bool CMultiXAppMsg::Reply(MultiXError Error,int32_t MsgCode, const CMultiXBufferArray &Bufs, int Flags,int Priority, uint32_t Timeout, void *Context,TMultiXProcID RoutedFrom)
{
if(ReplySent())
return false;
if(!this->NotifyAny())
return false;
if(!m_pProcess->SenderEnabled())
return false;
if(m_pProcess->RestartCount() != m_OwnerInstance)
return false;
if(RoutedFrom == 0)
RoutedFrom = m_pProcess->Owner()->ProcessID();
CMultiXAppMsg *Msg = m_pProcess->CreateNewAppMsg();
m_pProcess->AddToMsgQueue(m_pProcess->m_pOutQueue, Msg);
Msg->AllocateL7XMsg(MsgCode);
Msg->AddReceiverMsgID(this->SenderMsgID());
if(this->IsCtrlMsgFromTpm())
Flags |= FlagControlToTpm;
else if(this->IsCtrlMsgToTpm())
Flags |= FlagControlFromTpm;
if(Bufs.Count() == 0)
Flags &= ~CMultiXAppMsg::FlagResponseRequired;
Msg->AddInfo(Bufs,Flags | FlagMsgIsResponse,this->m_SessionID,Priority,Timeout,Context,Error,RoutedFrom,NULL,NULL,NULL,NULL);
if(Msg->NotifyAny())
m_pProcess->Send(*Msg);
else
{
m_pProcess->Send(*Msg);
delete Msg;
}
SetReplySent(true);
return true;
}
示例2: Send
bool CMultiXProcess::Send(int32_t MsgCode, const CMultiXBufferArray &Bufs,int Flags, const TMultiXSessionID &SessionID,int Priority, uint32_t Timeout, void *Context,TMultiXProcID RoutedFrom,const char *WSURL,const char *WSSoapAction,const char *WSDllFile,const char *WSDllFunction)
{
if(!SenderEnabled())
return false;
CMultiXAppMsg *Msg = CreateNewAppMsg();
AddToMsgQueue(m_pOutQueue,Msg);
Msg->AllocateL7XMsg(MsgCode);
if(RoutedFrom == 0)
RoutedFrom = Owner()->ProcessID();
Msg->AddInfo(Bufs,Flags & (~CMultiXAppMsg::FlagMsgIsResponse),SessionID,Priority,Timeout,Context,MultiXNoError,RoutedFrom,WSURL,WSSoapAction,WSDllFile,WSDllFunction);
if(Msg->NotifyAny())
return Send(*Msg);
else
{
Send(*Msg);
delete Msg;
}
return true;
}