Subversion Repositories filter_foundry

Rev

Rev 390 | Rev 467 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 390 Rev 466
Line 1... Line 1...
1
FFX (Filters Unlimited) file format
1
FFX (Filters Unlimited) file format
2
===================================
2
===================================
3
    
3
    
4
    FFXFile_V10 = {
4
    FFXFile = {
5
        String         fileVersion        // "FFX1.0"
5
        String         fileVersion        // "FFX1.0" or "FFX1.1" or "FFX1.2"
6
        String         title
6
        String         title
7
        String         category
7
        String         category
8
        String         author
8
        String         author
9
        String         copyright
9
        String         copyright
10
        String[5]      channels           // I (Intro), R, G, B, A
10
        String[5]      channels           // I (Intro), R (Red), G (Green), B (Blue), A (Alpha)
11
        SliderInfo[8]  sliders
11
        SliderInfo[8]  sliders
12
        int32_t        gradientIndex
12
        int32_t        gradientIndex
13
    }
-
 
14
    
-
 
15
    FFXFile_V11 = {
-
 
16
        String         fileVersion        // "FFX1.1"
-
 
17
        String         title
-
 
18
        String         category
-
 
19
        String         author
-
 
20
        String         copyright
-
 
21
        String[5]      channels           // I (Intro), R, G, B, A
-
 
22
        SliderInfo[8]  sliders
-
 
23
        int32_t        gradientIndex
-
 
24
        int32_t        numPresets         // new in FFX 1.1
-
 
25
        Preset[]       presets            // new in FFX 1.1
-
 
26
    }
-
 
27
    
-
 
28
    FFXFile_V12 = {
-
 
29
        String         fileVersion        // "FFX1.2"
-
 
30
        String         title
-
 
31
        String         category
-
 
32
        String         author
-
 
33
        String         copyright
-
 
34
        String[5]      channels           // I (Intro), R, G, B, A
-
 
35
        SliderInfo[8]  sliders            // Slider names prefix: {C} = Checkbox, {S} or none = Slider
-
 
36
        int32_t        gradientIndex
-
 
37
        int32_t        bitmapInfoSize     // new in FFX 1.2
13
        int32_t        bitmapInfoSize     // only in FFX >= 1.2, otherwise not present
38
        BitmapInfo     bitmapInfo         // new in FFX 1.2
14
        BitmapInfo     bitmapInfo         // only in FFX >= 1.2, otherwise not present
39
        int32_t        numPresets         // new in FFX 1.1
15
        int32_t        numPresets         // only in FFX >= 1.1, otherwise not present
40
        Preset[]       presets            // new in FFX 1.1
16
        Preset[]       presets            // only in FFX >= 1.1, otherwise not present
41
    }
17
    }
42
    
18
    
43
    BitmapInfo = {
19
    BitmapInfo = {
44
        char[]         szFilesize         // human readable file size (numeric string) with NUL terminator
20
        char[]         szFilesize         // human readable file size (numeric string) with NUL terminator
45
        char[]         szUnknown          // Always 1 NUL character?
21
        char[]         szUnknown          // TODO: ??? Always 1 NUL character?
46
        char[]         jpgData
22
        char[]         jpgData
47
    }
23
    }
48
    
24
    
49
    String = {
25
    String = {
50
        int32_t        length
26
        int32_t        length
51
        char[]         value
27
        char[]         value
52
    }
28
    }
53
    
29
    
54
    SliderInfo = {
30
    SliderInfo = {
55
        int32_t        nameLength
31
        int32_t        nameLength
-
 
32
        char[]         name               // In FFX >= 1.2: Slider can have names prefixes:
56
        char[]         name
33
                                          // {C} = Checkbox
-
 
34
                                          // {S} or none = Slider
57
        byte           enabled
35
        byte           enabled
58
        int32_t        initialValue
36
        int32_t        initialValue
59
    }
37
    }
60
    
38
    
61
    Preset = {
39
    Preset = {