/// <summary>Add a record with a name of a next state record to link to</summary> /// <param name="record">Record to be saved</param> /// <param name="linkToName">Name of record to link to</param> public void AddNSRecordRef(NextStateRec record, string linkToName, bool isAlternate) { if (m_recNameXRef.ContainsKey(linkToName)) { // gramma has been already defined -can be linked as required NextStateRec link = m_recNameXRef[linkToName]; if (isAlternate) { record.LinkAlternate(link); } else { record.LinkNext(link); } } else { m_unLnkdRecordList.Add(record, new Link2Ref(linkToName, isAlternate)); // Gramma not yet defined, add to list to be resovled later } }
/// <summary>Add the Allternative NextState to an NS record</summary> /// <param name="record">Record to receive link to the Alternative NS Record</param> /// <param name="altNextState">The Next stae record to be linked as Alternative to record</param> public void AddAlternativeNSRecord(NextStateRec record, NextStateRec altNextState) { record.LinkAlternate(altNextState); }