{
int count = filters.size();
w.writeUI8( count );
for (Iterator<Filter> it = filters.iterator(); it.hasNext();)
{
Filter f = (Filter) it.next();
w.writeUI8(f.getID());
// I've never quite understood why the serialization code isn't in the tags themselves..
switch(f.getID())
{
case DropShadowFilter.ID: encodeDropShadowFilter( w, (DropShadowFilter) f ); break;
case BlurFilter.ID: encodeBlurFilter( w, (BlurFilter) f ); break;
case ConvolutionFilter.ID: encodeConvolutionFilter( w, (ConvolutionFilter) f ); break;
case GlowFilter.ID: encodeGlowFilter( w, (GlowFilter) f ); break;