/usr/include/compiz/animation/zoom.h is in compiz-dev 1:0.9.12.2+16.04.20160415-0ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 | #ifndef ANIMATION_ZOOM_H
#define ANIMATION_ZOOM_H
#include "animation.h"
class ZoomAnim :
    public FadeAnim,
    virtual public TransformAnim
{
public:
     ZoomAnim (CompWindow *w,
	       WindowEvent curWindowEvent,
	       float duration,
	       const AnimEffect info,
	       const CompRect &icon);
public:
     void step () { TransformAnim::step (); }
     void adjustDuration ();
     float getFadeProgress ();
     bool updateBBUsed () { return true; }
     void updateBB (CompOutput &output) { TransformAnim::updateBB (output); }
     void applyTransform ();
protected:
     float getActualProgress ();
     Point getCenter ();
     virtual float getSpringiness ();
     virtual bool isZoomFromCenter ();
     virtual bool zoomToIcon () { return true; }
     virtual bool hasExtraTransform () { return false; }
     virtual void applyExtraTransform (float progress) {}
     virtual bool shouldAvoidParallelogramLook () { return false; }
     virtual bool scaleAroundIcon ();
     virtual bool neverSpringy () { return false; }
     void getZoomProgress (float *moveProgress,
			   float *scaleProgress,
			   bool neverSpringy);
     bool requiresTransformedWindow () const { return true; }
     static const float kDurationFactor;
     static const float kSpringyDurationFactor;
     static const float kNonspringyDurationFactor;
private:
     void getCenterScaleFull (Point *pCurCenter, Point *pCurScale,
			      Point *pWinCenter, Point *pIconCenter,
			      float *pMoveProgress);
     void getCenterScale (Point *pCurCenter, Point *pCurScale);
};
class GridZoomAnim :
    public GridTransformAnim,
    public ZoomAnim
{
public:
    GridZoomAnim (CompWindow *w,
		  WindowEvent curWindowEvent,
		  float duration,
		  const AnimEffect info,
		  const CompRect &icon);
    void init () { GridTransformAnim::init (); }
    void step () { ZoomAnim::step (); }
    void updateTransform (GLMatrix &wTransform)
    { GridTransformAnim::updateTransform (wTransform); }
    void updateBB (CompOutput &output) { GridTransformAnim::updateBB (output); }
    bool updateBBUsed () { return true; }
    bool neverSpringy () { return true; }
    float getSpringiness () { return 0; }
    bool scaleAroundIcon () { return false; }
    void adjustDuration ();
    bool requiresTransformedWindow () const { return true; }
};
#endif
 |