public ER CreateMailbox(ID mbxid, ref T_CMBX pk_cmbx, out ID p_mbxid) { int i; //if (pk_cmbx == null) // return ER.E_PAR; if (mbxid == ID.ID_AUTO) { //if (p_mbxid == 0) // return ER.E_PAR; mbxid.Value = 1; for (i = 0; ; i++) { if (i >= m_MailboxTable.Count) { m_MailboxTable.Add(new Mailbox(mbxid, ref pk_cmbx, this)); break; } if (mbxid == m_MailboxTable[i].MbxID) { mbxid.Value++; } else { m_MailboxTable.Insert(i, new Mailbox(mbxid, ref pk_cmbx, this)); break; } } p_mbxid = mbxid; } else { ID tmpid; p_mbxid = ID.NULL; for (i = 0; i < m_MailboxTable.Count; i++) { tmpid = m_MailboxTable[i].MbxID; if (mbxid == tmpid) { return(ER.E_OBJ); } else if (mbxid < tmpid) { break; } } m_MailboxTable.Insert(i, new Mailbox(mbxid, ref pk_cmbx, this)); } return(ER.E_OK); }
public Mailbox(ID mbxid, ref T_CMBX pk_cmbx, Nucleus pNucleus) { m_MbxID = mbxid; m_cmbx = pk_cmbx; m_Nucleus = pNucleus; }
public ER cre_mbx(ID mbxid, ref T_CMBX pk_cmbx, out ID p_mbxid) { ER Result = ER.E_NOEXS; p_mbxid = ID.NULL; if (g_Kernel == null) return ER.E_DLT; g_Kernel.LockCPU(); try { Result = g_Kernel.Nucleus.CreateMailbox(mbxid, ref pk_cmbx, out p_mbxid); } finally { g_Kernel.UnlockCPU(); } return Result; }
public ER CreateMailbox(ID mbxid, ref T_CMBX pk_cmbx, out ID p_mbxid) { int i; //if (pk_cmbx == null) // return ER.E_PAR; if (mbxid == ID.ID_AUTO) { //if (p_mbxid == 0) // return ER.E_PAR; mbxid.Value = 1; for (i = 0; ; i++) { if (i >= m_MailboxTable.Count) { m_MailboxTable.Add(new Mailbox(mbxid, ref pk_cmbx, this)); break; } if (mbxid == m_MailboxTable[i].MbxID) { mbxid.Value++; } else { m_MailboxTable.Insert(i, new Mailbox(mbxid, ref pk_cmbx, this)); break; } } p_mbxid = mbxid; } else { ID tmpid; p_mbxid = ID.NULL; for (i = 0; i < m_MailboxTable.Count; i++) { tmpid = m_MailboxTable[i].MbxID; if (mbxid == tmpid) { return ER.E_OBJ; } else if (mbxid < tmpid) { break; } } m_MailboxTable.Insert(i, new Mailbox(mbxid, ref pk_cmbx, this)); } return ER.E_OK; }