question: public FrameAnalysisResult [ ] analyseAllFrames ( ) { if ( analysisResults == null ) { ArrayList results = new ArrayList ( ) ; FrameAnalysisResult oneResult ; while ( ( oneResult = analyseNextFrame ( ) ) != null ) { results . add ( oneResult ) ; } analysisResults = ( FrameAnalysisResult [ ] ) results . toArray ( new FrameAnalysisResult [ 0 ] ) ; } return analysisResults ; }
target:  Analyse the entire signal as frames. Stop as soon as the first frame reaches or passes the end of the signal. Repeated access to this method returns a stored version of the results.