a8a774655d5ca125f9a3872532f2f35a59b5b0ae
[mardrone] / mardrone / ARDrone_SDK_Version_1_8_20110726 / Examples / iPhone / FreeFlight / Classes / plf.h
1 /*
2  *  plf.h
3  *  ARUpdater
4  *
5  *  Created by f.dhaeyer on 06/07/10.
6  *  Copyright 2010 Parrot SA. All rights reserved.
7  *
8  */
9
10 #ifndef _PLF_H_
11 #define _PLF_H_
12
13 #define PLF_CURRENT_VERSION  10
14 #define PLF_HEADER_MAGIC     0x21464c50 //!< PLF magic number
15
16 typedef unsigned int   Plf_Word;        //!< Unsigned 32 bits integer
17 typedef unsigned short Plf_Half;        //!< Unsigned 16 bits integer
18 typedef void*          Plf_Add;         //!< 32 bits address
19
20 //! PLF file header
21 typedef struct {
22         Plf_Word    p_magic;                  //!< PLF magic number
23         Plf_Word    p_plfversion;             //!< PLF format version
24         Plf_Word    p_phdrsize;               //!< File header size
25         Plf_Word    p_shdrsize;               //!< Section header size
26         Plf_Word    p_type;                   //!< File type
27         Plf_Add     p_entry;                  //!< Executable entry point
28         Plf_Word    p_targ;                   //!< Target platform
29         Plf_Word    p_app;                    //!< Target application
30         Plf_Word    p_hdw;                    //!< Hardware compatibility
31         Plf_Word    p_ver;                    //!< Version
32         Plf_Word    p_edit;                   //!< Edition
33         Plf_Word    p_ext;                    //!< Extension
34         Plf_Word    p_lang;                   //!< Language zone
35         Plf_Word    p_size;                   //!< File size in bytes
36 } plf_phdr;
37
38 int plf_get_header(const char *plf_filename, plf_phdr *header);
39 #endif // _PLF_H_