[params setValue:k forKey:key];
}
+- (void)encodeWithCoder:(NSCoder*)encoder
+{
+ [encoder encodeObject:[attrs valueForKey:kCIAttributeFilterName] forKey:@"filterName"];
+ [encoder encodeObject:name forKey:@"name"];
+ [encoder encodeObject:attrs forKey:@"attrs"];
+ [encoder encodeObject:colors forKey:@"colors"];
+ [encoder encodeObject:vecs forKey:@"vecs"];
+ [encoder encodeObject:affine forKey:@"affine"];
+ [encoder encodeObject:params forKey:@"params"];
+ [encoder encodeBool:generator forKey:@"generator"];
+}
+
+- (id)initWithCoder:(NSCoder*)coder
+{
+ name = [coder decodeObjectForKey:@"name"];
+ attrs = [coder decodeObjectForKey:@"attrs"];
+ colors = [coder decodeObjectForKey:@"colors"];
+ vecs = [coder decodeObjectForKey:@"vecs"];
+ affine = [coder decodeObjectForKey:@"affine"];
+ params = [coder decodeObjectForKey:@"params"];
+ generator = [coder decodeBoolForKey:@"generator"];
+
+ NSString* filterName = [coder decodeObjectForKey:@"filterName"];
+ filter = [[CIFilter filterWithName:filterName] retain];
+ [filter setDefaults];
+
+ return self;
+}
+
+
@end