Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Separate ImageFormat and ImageFormatIndicies headers so library users…
… independent of glib macros.
- Loading branch information
Showing
9 changed files
with
102 additions
and
54 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
language: c |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
/* | ||
Prepare indices into our pixel format. | ||
Synthesizer engine pixel contains mask pixelel and map pixelels | ||
(Not just the color and alpha pixelels.) | ||
IN: Image format (RGB, RGBA, Grey, etc.) | ||
OUT: global index variables. | ||
Not depend on Gimp | ||
Copyright (C) 2010, 2011 Lloyd Konneker | ||
This program is free software; you can redistribute it and/or modify | ||
it under the terms of the GNU General Public License as published by | ||
the Free Software Foundation; either version 2 of the License, or | ||
(at your option) any later version. | ||
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. | ||
You should have received a copy of the GNU General Public License | ||
along with this program; if not, write to the Free Software | ||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
*/ | ||
|
||
|
||
#ifndef __SYNTH_IMAGE_FORMAT_INDICIES_H__ | ||
#define __SYNTH_IMAGE_FORMAT_INDICIES_H__ | ||
|
||
/* | ||
bpp i.e. count of bytes (channels) per pixel or index thereof. | ||
bpp is bytes per pixel | ||
bip is byte index within pixel. | ||
See data layout in resynth_types.h | ||
*/ | ||
typedef unsigned char TPixelelIndex; | ||
|
||
/* | ||
Struct of indices of pixelels within pixels in internal image format. | ||
Also flags. | ||
One is used for the target, one for the source. | ||
*/ | ||
typedef struct indicesStruct { | ||
TPixelelIndex colorEndBip; /* Index of last color pixelels in target/context image. */ | ||
TPixelelIndex alpha_bip; /* Index of target alpha pixelel */ | ||
TPixelelIndex map_start_bip; /* Index of map pixelels */ | ||
TPixelelIndex map_end_bip; | ||
|
||
TPixelelIndex img_match_bpp; /* bpp to match in image. */ | ||
TPixelelIndex map_match_bpp; /* bpp to match in map. */ | ||
TPixelelIndex total_bpp; /* Total pixelels */ | ||
|
||
gboolean isAlphaTarget; // Does target have alpha? | ||
gboolean isAlphaSource; // Does source have alpha? | ||
} TFormatIndices; | ||
|
||
extern unsigned int | ||
countPixelelsPerPixelForFormat( | ||
TImageFormat format // IN | ||
); | ||
|
||
extern int | ||
prepareImageFormatIndicesFromFormatType( | ||
TFormatIndices* indices, // OUT | ||
TImageFormat format // IN | ||
); | ||
|
||
extern void | ||
prepareImageFormatIndices( | ||
TFormatIndices* indices, // OUT | ||
guint count_color_channels_target, // Must be same count in source | ||
guint count_color_channels_map, | ||
gboolean is_alpha_target, | ||
gboolean is_alpha_source, | ||
gboolean isMap | ||
); | ||
|
||
extern void | ||
prepareDefaultFormatIndices( | ||
TFormatIndices* formatIndices | ||
); | ||
|
||
#endif /* __SYNTH_IMAGE_FORMAT_H__ */ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters