00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 #import "AMPlayable.h"
00011 #import "AMControllableHierarchy.h"
00012 #import "AMIdentifiable.h"
00013 #import "AMTime.h"
00014 #import "AMValue.h"
00015 #import "AMControl.h"
00016 #import "AMAnimationInstance.h"
00017 #import "a2ml.h"
00018 #import <Foundation/Foundation.h>
00019 
00020 
00025 @interface AMAnimation : NSObject <AMPlayable, AMInstanciable, AMIdentifiable, AMControllableHierarchy> {
00026     
00027     UID uid;
00028     AMTime *dur;
00029     AMTime *quantize;
00030     AMValue *from;
00031     AMValue *to;
00032     AMValue *by;
00033     AMFillType fill;
00034     AMAccumulationType accumulation;
00035     float repeatCount;
00036     AMTime *repeatDur;
00037     NSArray *values;
00038     NSString *eventValue;
00039     
00040     
00041     id<AMControllable> parent;      
00042     NSString *control;              
00043     NSString *attribute;            
00044     NSMutableArray *instances;      
00045 }
00046 
00050 @property (nonatomic, retain) AMTime *dur;
00051 
00055 @property (nonatomic, retain) AMTime *quantize;
00056 
00057 
00061 @property (nonatomic, retain) AMValue *from;
00062 
00066 @property (nonatomic, retain) AMValue *to;
00067 
00071 @property (nonatomic, retain) AMValue *by;
00072 
00076 @property (nonatomic) AMFillType fill;
00077 
00081 @property (nonatomic) AMAccumulationType accumulation;
00082 
00086 @property (nonatomic) float repeatCount;
00087 
00091 @property (nonatomic, retain) AMTime *repeatDur;
00092 
00096 @property (nonatomic, retain) NSArray *values;
00097 
00101 @property (nonatomic, retain) NSString *eventValue;
00102 
00103 
00111 - (id)initWithParent:(id<AMControllable>)_parent control:(NSString *)_control attribute:(NSString *)_attribute;
00112 
00117 - (void)animateWithValues:(id)_value;
00118 
00119 
00125 - (id<AMControllable>)getControlParent;
00126 
00132 - (NSString *)getControlName;
00133 
00139 - (NSString *)getAttributeName;
00140 
00141 @end