Esempio n. 1
0
CScopeInfo_Base::CScopeInfo_Base(const CTSE_Handle& tse,
                                 const CTSE_Info_Object& info)
    : m_TSE_ScopeInfo(&tse.x_GetScopeInfo()),
      m_TSE_Handle(tse),
      m_ObjectInfo(&reinterpret_cast<const CObject&>(info))
{
    _ASSERT(x_Check(fForceZero | fForceInfo));
}
Esempio n. 2
0
bool CTSE_Handle::OrderedBefore(const CTSE_Handle& tse) const
{
    if ( *this == tse ) {
        return false;
    }
    const CTSE_ScopeInfo& info1 = x_GetScopeInfo();
    const CTSE_ScopeInfo& info2 = tse.x_GetScopeInfo();
    CTSE_ScopeInfo::TBlobOrder order1 = info1.GetBlobOrder();
    CTSE_ScopeInfo::TBlobOrder order2 = info2.GetBlobOrder();
    if ( order1 != order2 ) {
        _ASSERT((order1 < order2) || (order2 < order1));
        return order1 < order2;
    }
    if ( info1.GetLoadIndex() != info2.GetLoadIndex() ) {
        return info1.GetLoadIndex() < info2.GetLoadIndex();
    }
    return *this < tse;
}
Esempio n. 3
0
CSeq_entry_Handle::CSeq_entry_Handle(const CSeq_entry_Info& info,
                                     const CTSE_Handle& tse)
    : m_Info(tse.x_GetScopeInfo().GetScopeLock(tse, info))
{
}
Esempio n. 4
0
CSeq_entry_Handle::CSeq_entry_Handle(const CTSE_Handle& tse)
    : m_Info(tse.x_GetScopeInfo().GetScopeLock(tse, tse.x_GetTSE_Info()))
{
}