public Node <CompressedPhoton> LoadNodeFromStream(BinaryReader br) { int axis = br.ReadInt32(); if (axis == -1) { return(null); } if ((axis < 0) || (axis > 2)) { throw new IndexOutOfRangeException(); } CompressedPhoton phot = CompressedPhoton.FromStream(br); Node <CompressedPhoton> node = new Node <CompressedPhoton>(phot); AddPhoton(phot); node.Left = LoadNodeFromStream(br); node.Right = LoadNodeFromStream(br); return(node); }
public void LoadStoreFromStream(BinaryReader br) { string id = new string(br.ReadChars(4)); if (id != "STOR") { return; } int count = br.ReadInt32(); if (count < 0) { return; } store = new CompressedPhoton[count]; storeIndex = 0; for (int x = 0; x < count; x++) { AddPhoton(CompressedPhoton.FromStream(br)); } }