libgphoto2 photo camera library (libgphoto2) API 2.5.30
jpeg.h File Reference

Go to the source code of this file.

Data Structures

struct  chunk
 
struct  jpeg
 

Typedefs

typedef struct chunk chunk
 
typedef char jpeg_quantization_table[64]
 
typedef struct jpeg jpeg
 

Enumerations

enum  jpegmarker {
  JPEG_START =0xD8 , JPEG_COMMENT =0xFE , JPEG_APPO =0xE0 , JPEG_QUANTIZATION =0xDB ,
  JPEG_HUFFMAN =0xC4 , JPEG_SOFC0 =0xC0 , JPEG_SSSEAHAL =0xDA , JPEG_EOI =0xD9
}
 

Functions

chunkgpi_jpeg_chunk_new (int length)
 
chunkgpi_jpeg_chunk_new_filled (int length, char *data)
 
void gpi_jpeg_chunk_destroy (chunk *mychunk)
 
void gpi_jpeg_chunk_print (chunk *mychunk)
 
char gpi_jpeg_findff (int *location, chunk *picture)
 
char gpi_jpeg_findactivemarker (char *id, int *location, chunk *picture)
 
char * gpi_jpeg_markername (unsigned int c)
 
jpeggpi_jpeg_new (void)
 
void gpi_jpeg_destroy (jpeg *myjpeg)
 
void gpi_jpeg_add_marker (jpeg *myjpeg, chunk *picture, int start, int end)
 
void gpi_jpeg_add_chunk (jpeg *myjpeg, chunk *source)
 
void gpi_jpeg_parse (jpeg *myjpeg, chunk *picture)
 
void gpi_jpeg_print (jpeg *myjpeg)
 
chunkgpi_jpeg_make_start (void)
 
chunkgpi_jpeg_make_SOFC (int width, int height, char vh1, char vh2, char vh3, char q1, char q2, char q3)
 
chunkgpi_jpeg_makeSsSeAhAl (int huffset1, int huffset2, int huffset3)
 
void gpi_jpeg_print_quantization_table (jpeg_quantization_table *table)
 
chunkgpi_jpeg_make_quantization (const jpeg_quantization_table *table, char number)
 
jpeg_quantization_table * gpi_jpeg_quantization2table (chunk *qmarker)
 
jpeggpi_jpeg_header (int width, int height, char vh1, char vh2, char vh3, char q1, char q2, char q3, const jpeg_quantization_table *quant1, const jpeg_quantization_table *quant2, char huffset1, char huffset2, char huffset3, chunk *huff1, chunk *huff2, chunk *huff3, chunk *huff4)
 
char gpi_jpeg_write (CameraFile *file, const char *name, jpeg *myjpeg)
 

Detailed Description

Author
This code was written by Nathan Stenzel for gphoto
Note
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This library 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 Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA