FFmpeg
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
Examples
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
libavcodec
fits.h
Go to the documentation of this file.
1
/*
2
* FITS image format common prototypes and structures
3
* Copyright (c) 2017 Paras Chadha
4
*
5
* This file is part of FFmpeg.
6
*
7
* FFmpeg is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU Lesser General Public
9
* License as published by the Free Software Foundation; either
10
* version 2.1 of the License, or (at your option) any later version.
11
*
12
* FFmpeg is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
* Lesser General Public License for more details.
16
*
17
* You should have received a copy of the GNU Lesser General Public
18
* License along with FFmpeg; if not, write to the Free Software
19
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20
*/
21
22
#ifndef AVCODEC_FITS_H
23
#define AVCODEC_FITS_H
24
25
#include <inttypes.h>
26
27
#include "
libavutil/dict.h
"
28
29
typedef
enum
FITSHeaderState
{
30
STATE_SIMPLE
,
31
STATE_XTENSION
,
32
STATE_BITPIX
,
33
STATE_NAXIS
,
34
STATE_NAXIS_N
,
35
STATE_PCOUNT
,
36
STATE_GCOUNT
,
37
STATE_REST
,
38
}
FITSHeaderState
;
39
40
/**
41
* Structure to store the header keywords in FITS file
42
*/
43
typedef
struct
FITSHeader
{
44
FITSHeaderState
state
;
45
unsigned
naxis_index
;
46
int
bitpix
;
47
int64_t
blank
;
48
int
blank_found
;
49
int
naxis
;
50
int
naxisn
[999];
51
int
pcount
;
52
int
gcount
;
53
int
groups
;
54
int
rgb
;
/**< 1 if file contains RGB image, 0 otherwise */
55
int
image_extension
;
56
double
bscale
;
57
double
bzero
;
58
int
data_min_found
;
59
double
data_min
;
60
int
data_max_found
;
61
double
data_max
;
62
}
FITSHeader
;
63
64
65
/**
66
* Initialize a single header line
67
* @param header pointer to the header
68
* @param state current state of parsing the header
69
* @return 0 if successful otherwise AVERROR_INVALIDDATA
70
*/
71
int
avpriv_fits_header_init
(
FITSHeader
*
header
,
FITSHeaderState
state
);
72
73
/**
74
* Parse a single header line
75
* @param avcl used in av_log
76
* @param header pointer to the header
77
* @param line one header line
78
* @param metadata used to store metadata while decoding
79
* @return 0 if successful otherwise AVERROR_INVALIDDATA
80
*/
81
int
avpriv_fits_header_parse_line
(
void
*avcl,
FITSHeader
*
header
,
const
uint8_t
line
[80],
AVDictionary
***metadata);
82
83
#endif
/* AVCODEC_FITS_H */
FITSHeader::rgb
int rgb
1 if file contains RGB image, 0 otherwise
Definition:
fits.h:54
state
static struct @260 state
avpriv_fits_header_init
int avpriv_fits_header_init(FITSHeader *header, FITSHeaderState state)
Initialize a single header line.
Definition:
fits.c:26
FITSHeader::data_max
double data_max
Definition:
fits.h:61
FITSHeader::image_extension
int image_extension
Definition:
fits.h:55
STATE_REST
Definition:
fits.h:37
FITSHeaderState
FITSHeaderState
Definition:
fits.h:29
FITSHeader::bscale
double bscale
Definition:
fits.h:56
dict.h
Public dictionary API.
FITSHeader::state
FITSHeaderState state
Definition:
fits.h:44
uint8_t
uint8_t
Definition:
audio_convert.c:194
FITSHeader::naxis
int naxis
Definition:
fits.h:49
FITSHeader::bzero
double bzero
Definition:
fits.h:57
STATE_NAXIS
Definition:
fits.h:33
header
static const uint8_t header[24]
Definition:
sdr2.c:67
STATE_XTENSION
Definition:
fits.h:31
AVDictionary
Definition:
dict.c:30
FITSHeader
Structure to store the header keywords in FITS file.
Definition:
fits.h:43
line
Definition:
graph2dot.c:48
FITSHeader::data_min_found
int data_min_found
Definition:
fits.h:58
FITSHeader::data_min
double data_min
Definition:
fits.h:59
avpriv_fits_header_parse_line
int avpriv_fits_header_parse_line(void *avcl, FITSHeader *header, const uint8_t line[80], AVDictionary ***metadata)
Parse a single header line.
Definition:
fits.c:108
STATE_SIMPLE
Definition:
fits.h:30
FITSHeader::bitpix
int bitpix
Definition:
fits.h:46
FITSHeader::naxisn
int naxisn[999]
Definition:
fits.h:50
FITSHeader::naxis_index
unsigned naxis_index
Definition:
fits.h:45
STATE_NAXIS_N
Definition:
fits.h:34
FITSHeader::pcount
int pcount
Definition:
fits.h:51
FITSHeader::blank
int64_t blank
Definition:
fits.h:47
STATE_PCOUNT
Definition:
fits.h:35
FITSHeader::data_max_found
int data_max_found
Definition:
fits.h:60
STATE_GCOUNT
Definition:
fits.h:36
FITSHeader::groups
int groups
Definition:
fits.h:53
STATE_BITPIX
Definition:
fits.h:32
FITSHeader::gcount
int gcount
Definition:
fits.h:52
FITSHeader::blank_found
int blank_found
Definition:
fits.h:48
Generated on Fri Jan 12 2018 01:47:41 for FFmpeg by
1.8.6