PROCEDURE ReadAllCVCFiles( chainPrefix : TEXT; nChains, band: CARDINAL; ): REF ARRAY OF PZSymbolChain.ReadData = <* FATAL Rd.Failure *> BEGIN WITH ch = NEW(REF ARRAY OF PZSymbolChain.ReadData, nChains ) DO FOR i := 0 TO nChains-1 DO WITH chainTag = Fmt.Pad(Fmt.Int(i), 4, '0'), bandTag = Fmt.Pad(Fmt.Int(band), 3, '0'), fileName = chainTag & "/" & chainPrefix & "-" & chainTag & "-f" & bandTag & "-c-u.cvc", rd = FileRd.Open(fileName), data = PZSymbolChain.Read(rd) DO ch[i] := data; Rd.Close(rd); END; END; RETURN ch; END; END ReadAllCVCFiles; IF pp.keywordPresent("-fractality") THEN o.fractality := pp.getNextLongReal(0.5d0, 2.0d0) ELSE o.fractality := 1.0d0 END; PROCEDURE ReduceSampleIndex(x: LONGREAL; m: CARDINAL): LONGREAL = (* Reduces the sample index "x" modulo the sample count "m". *) BEGIN WITH fm = FLOAT(m, LONGREAL) DO WHILE x < 0.0d0 DO x := x + fm END; WHILE x >= fm DO x := x - fm END; RETURN x END END ReduceSampleIndex;