本文整理汇总了C++中Session::IsActive方法的典型用法代码示例。如果您正苦于以下问题:C++ Session::IsActive方法的具体用法?C++ Session::IsActive怎么用?C++ Session::IsActive使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Session
的用法示例。
在下文中一共展示了Session::IsActive方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: getter
static void
node_opened(struct vnode *vnode, int32 fdType, dev_t device, ino_t parent,
ino_t node, const char *name, off_t size)
{
if (device < gBootDevice) {
// we ignore any access to rootfs, pipefs, and devfs
// ToDo: if we can ever move the boot device on the fly, this will break
return;
}
Session *session;
SessionGetter getter(team_get_current_team_id(), &session);
if (session == NULL) {
char buffer[B_FILE_NAME_LENGTH];
if (name == NULL
&& vfs_get_vnode_name(vnode, buffer, sizeof(buffer)) == B_OK)
name = buffer;
// create new session for this team
getter.New(name, device, node, &session);
}
if (session == NULL || !session->IsActive()) {
if (sMainSession != NULL) {
// ToDo: this opens a race condition with the "stop session" syscall
getter.Stop();
}
return;
}
session->AddNode(device, node);
}
示例2:
void
GameServer::OnAcquireTableAccess(AcquireTableAccessPacket* p, void* pParam){
if( p->m_nSessionId != 0 || p->m_nSessionIdAcquire == 0 || p->m_nTableId <= 0 || p->m_nTournamentId < 0 )
return;
ClientConnection* pConn = (ClientConnection*)pParam;
Session* pSess = Session::GetSessionById(p->m_nSessionIdAcquire, true);
bool bSuccess = false;
if( pConn->IsTableConnection() )
return;
if( pSess && pSess->IsActive() ){
int nUserId = pSess->GetUserId();
pSess->SetTableConnection(p->m_nTableId, p->m_nTournamentId, pConn, true);
pConn->SetTableConnection(p->m_nTableId, p->m_nTournamentId);
if( nUserId > 0 )
pConn->SetAuthorized(true);
p->m_bAvatarIsBlocked = pSess->IsAvatarBlocked();
p->m_bChatIsBlocked = pSess->IsChatBlocked();
p->m_nUserId = nUserId;
bSuccess = true;
SafePointer::Release(pSess);
}
// Send reply.
if( bSuccess ){
//pConn->SetAuthorized(
pConn->SetSession(pSess);
p->m_nErrorCode = ES_ERROR_SUCCESS;
}
else{
p->m_nUserId = 0;
p->m_nErrorCode = ES_ERROR_UNKNOWN;
}
SendPacket(pConn, p, true);
}