/**************************************************************
 * 
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 * 
 *   http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 * 
 *************************************************************/


#ifndef __com_sun_star_animations_AnimationCalcMode_idl__ 
#define __com_sun_star_animations_AnimationCalcMode_idl__ 

//============================================================================= 
 
 module com {  module sun {  module star {  module animations {  
 
//============================================================================= 

/** Specifies the interpolation mode for the animation.

	@see <type>XAnimation</type>
	@see http://www.w3.org/TR/smil20/animation.html#adef-calcMode
	@see http://www.w3.org/TR/smil20/animation.html#adef-SplineAnimation-calcMode
*/
constants AnimationCalcMode
{
	/** This specifies that the animation function will jump from one value to the next without any interpolation. 
	*/
	const short DISCRETE = 0;
	
	/** Simple linear interpolation between values is used to calculate the animation function. 
		<br>
        This is the default. 
	*/
	const short LINEAR = 1;

	/** Defines interpolation to produce an even pace of change across the animation. 
		<br>
		This is only supported for values that define a linear numeric range, and
		for which some notion of "distance" between points can be calculated
		(e.g. position, width, height, etc.). 
	*/
    const short PACED = 2;

	/** Interpolates from one value in the values list to the next according to a 
		time function defined by a cubic Bezier spline. The points of the spline are
		defined in the <member>KeyTimes</member> attribute, and the control points
		for each interval are defined in the <member>KeySplines</member> attribute.
	*/
	const short SPLINE = 3;
};

//============================================================================= 
 
}; }; }; };  

#endif
