예제 #1
0
 private void BuildSpeakerTableHeaderSecondPass(ref BinarySpeakerTableHeader speakerTableHeader)
 {
     speakerTableHeader.SpeakerNameArray.Offset = GetAlignedAddress();
     for (int i = 0; i < speakerTableHeader.SpeakerCount; i++)
     {
         AddAddressLocation();
         MoveToNextIntPosition();
     }
 }
예제 #2
0
        private void BuildSpeakerTableHeaderFinalPass(ref BinarySpeakerTableHeader speakerTableHeader)
        {
            speakerTableHeader.SpeakerNameArray.Value = new OffsetTo <List <byte> > [speakerTableHeader.SpeakerCount];
            for (int i = 0; i < speakerTableHeader.SpeakerNameArray.Value.Length; i++)
            {
                speakerTableHeader.SpeakerNameArray.Value[i].Offset = GetAddress();
                speakerTableHeader.SpeakerNameArray.Value[i].Value  = mSpeakerNames[i].ToList();

                // todo: maybe the speakername should include the trailing 0
                MoveToNextPositionByOffset(mSpeakerNames[i].Length + 1);
            }
        }
예제 #3
0
        private void BuildSpeakerTableHeaderFirstPass(ref BinarySpeakerTableHeader speakerHeader)
        {
            AddAddressLocation();
            MoveToNextIntPosition();

            speakerHeader.SpeakerCount = mSpeakerNames.Count;
            MoveToNextIntPosition();

            speakerHeader.Field08 = 0;
            MoveToNextIntPosition();

            speakerHeader.Field0C = 0;
            MoveToNextIntPosition();
        }
        private void BuildSpeakerTableHeaderFirstPass(ref BinarySpeakerTableHeader speakerHeader)
        {
            AddAddressLocation();
            MoveToNextIntPosition();

            speakerHeader.SpeakerCount = mSpeakerNames.Count;
            MoveToNextIntPosition();

            speakerHeader.ExtDataOffset = 0;
            MoveToNextIntPosition();

            speakerHeader.Reserved = 0;
            MoveToNextIntPosition();
        }