+void Object::NotifyPropertyAnimation( Animation& animation, Property::Index index, const Property::Value& value )
+{
+ if ( index < DEFAULT_PROPERTY_MAX_COUNT )
+ {
+ OnNotifyDefaultPropertyAnimation( animation, index, value );
+ }
+ else if ( ( index >= ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX ) && ( index <= ANIMATABLE_PROPERTY_REGISTRATION_MAX_INDEX ) )
+ {
+ AnimatablePropertyMetadata* animatableProperty = FindAnimatableProperty( index );
+ if( animatableProperty )
+ {
+ // update the cached property value
+ animatableProperty->SetPropertyValue( value );
+ }
+ }
+ else
+ {
+ CustomPropertyMetadata* custom = FindCustomProperty( index );
+ if( custom && custom->IsAnimatable() )
+ {
+ // update the cached property value
+ custom->SetPropertyValue( value );
+ }
+ }
+}
+