/// Create a new stream with a behaviour and a fixed slot size public AnimationStream(AnimationStreamType type, int slots) { Active = 0; Type = type; Slots = new IAnimation[slots]; if (Type == AnimationStreamType.Defer) { Deferred = new Queue <IAnimation>(); } }
/// Configure an animation stream public void Configure(TStream stream, AnimationStreamType type, int slots) { if (!_streams.ContainsKey(stream)) { _streams[stream] = new AnimationStream(type, slots); } else { throw new AnimationException(AnimationErrors.StreamAlreadyConfigured); } }
/// Configure a stream public void Configure(TStream stream, AnimationStreamType type, int slots) { Validate(); Streams.Configure(stream, type, slots); }