aboutsummaryrefslogtreecommitdiffstats
path: root/skins/skin_scaler.h
diff options
context:
space:
mode:
Diffstat (limited to 'skins/skin_scaler.h')
-rw-r--r--skins/skin_scaler.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/skins/skin_scaler.h b/skins/skin_scaler.h
new file mode 100644
index 0000000..4f22c2b
--- /dev/null
+++ b/skins/skin_scaler.h
@@ -0,0 +1,36 @@
+/* Copyright (C) 2007-2008 The Android Open Source Project
+**
+** This software is licensed under the terms of the GNU General Public
+** License version 2, as published by the Free Software Foundation, and
+** may be copied, distributed, and modified under those terms.
+**
+** This program is distributed in the hope that it will be useful,
+** but WITHOUT ANY WARRANTY; without even the implied warranty of
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+** GNU General Public License for more details.
+*/
+#ifndef _ANDROID_SKIN_SCALER_H
+#define _ANDROID_SKIN_SCALER_H
+
+#include "skin_image.h"
+
+typedef struct SkinScaler SkinScaler;
+
+/* create a new image scaler. by default, it uses a scale of 1.0 */
+extern SkinScaler* skin_scaler_create( void );
+
+/* change the scale of a given scaler. returns 0 on success, or -1 in case of
+ * problem (unsupported scale) */
+extern int skin_scaler_set( SkinScaler* scaler, double scale );
+
+extern void skin_scaler_free( SkinScaler* scaler );
+
+extern void skin_scaler_scale( SkinScaler* scaler,
+ SDL_Surface* dst,
+ SDL_Surface* src,
+ int sx,
+ int sy,
+ int sw,
+ int sh );
+
+#endif /* _ANDROID_SKIN_SCALER_H */