void DynamicHashArray::Open(QuantumFile *p_QF, ModifiableElement p_ArrayName) { ArrayIndex i; ModifiableElement TempString; m_ArrayName = p_ArrayName; m_QF = p_QF; m_MOA = MainObjectArrayPtr(m_QF); m_ObjectNumber = m_MOA->FindObjectByName(m_ArrayName); if (m_ObjectNumber == NoObject) { m_ObjectNumber = m_MOA->FindAvailableObject(); m_MOA->CreateMainObject(m_ArrayName,m_ObjectNumber); m_CurrentSlotCount = InitCurrentSlotCount; m_CurrentMaxSlotCount = InitCurrentMaxSlotCount; m_ElementsBeforeExpansion = ElementsPerSlot * InitCurrentSlotCount; for (i = 0; i < m_CurrentSlotCount; i ++) PutString(i,TempString); PutString((unsigned long)-1,""); // clear parameter string } else { TempString = GetString((unsigned long)-1); // get parameter string m_CurrentSlotCount = (ArrayIndex)atol(TempString); m_CurrentMaxSlotCount = (Ulong)atol(TempString.Mid(7,7)); m_ElementsBeforeExpansion = (ArrayIndex)atol(TempString.Mid(14,7)); } }