sclass SourceTriggeredStream extends Meta { DoneFlag ended = new(true); volatile BufferedImage lastElement; new AtomicLong elementCount; event newElement(A a); BufferedImage get() { ret lastElement; } long elementCount() { ret elementCount!; } void end { ended.raise(); } bool ended() { ret ended.isUp(); } }