Return TypeFunction nameArguments
hzEcodehdsBlock::AddVisent(hdsVE*,)

Declared in file: hzDissemino.h
Defined in file : hdsCore.cpp

Function Logic:

0:START 1:!pChild 2:hzexit 3:m_flagVE&VE_COMPLETE 4:hzexit 5:pChild==this 6:hzexit 7:m_VID==pChild->m_VID 8:hzexit nV 9:nV 10:m_VEs[nV]==pChild 11:hzexit 12:hzArray::Add 13:Return E_OK

Function body:

hzEcode hdsBlock::AddVisent (hdsVE* pChild)
{
   _hzfunc("hdsBlock::AddVisent") ;
   uint32_t    nV ;
   if (!pChild)                    hzexit(E_ARGUMENT, "%s: Null child supplied to block", *m_Refname) ;
   if (m_flagVE & VE_COMPLETE)     hzexit(E_SEQUENCE, "%s: Block is already complete, cannot add more entities", *m_Refname) ;
   if (pChild == this)             hzexit(E_CORRUPT, "%s: Case 1 Child is include block pointing to itself", *m_Refname) ;
   if (m_VID == pChild->m_VID)     hzexit(E_CORRUPT, "%s: Case 2 Child is include block pointing to itself", *m_Refname) ;
   for (nV = 0; nV < m_VEs.Count() ; nV++)
   {
       if (m_VEs[nV] == pChild)
           hzexit(E_CORRUPT, "%s: Child is already in include block", *m_Refname) ;
   }
   m_VEs.Add(pChild) ;
   return E_OK ;
}