Home | History | Annotate | Download | only in inc
      1 /*
      2  * Copyright (C) 2016 The Android Open Source Project
      3  * Copyright (C) 2016 Mopria Alliance, Inc.
      4  * Copyright (C) 2013 Hewlett-Packard Development Company, L.P.
      5  *
      6  * Licensed under the Apache License, Version 2.0 (the "License");
      7  * you may not use this file except in compliance with the License.
      8  * You may obtain a copy of the License at
      9  *
     10  *      http://www.apache.org/licenses/LICENSE-2.0
     11  *
     12  * Unless required by applicable law or agreed to in writing, software
     13  * distributed under the License is distributed on an "AS IS" BASIS,
     14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     15  * See the License for the specific language governing permissions and
     16  * limitations under the License.
     17  */
     18 
     19 #ifndef PCLM_COMMON_DEFINES
     20 #define PCLM_COMMON_DEFINES
     21 
     22 #include <stdbool.h>
     23 #include "wtypes.h"
     24 
     25 #define PCLM_Ver 0.98
     26 
     27 typedef enum {
     28     RGB,
     29     AdobeRGB,
     30     GRAY,
     31     unknown
     32 } colorSpaceEnum;
     33 
     34 typedef enum {
     35     jpeg,
     36     zlib,
     37     rle
     38 } compTypeEnum;
     39 
     40 typedef enum {
     41     simplex,
     42     duplex_longEdge,
     43     duplex_shortEdge
     44 } duplexDispositionEnum;
     45 
     46 typedef enum {
     47     job_open,
     48     job_closed,
     49     job_errored
     50 } jobStateEnum;
     51 
     52 typedef enum {
     53     deviceRGB,
     54     adobeRGB,
     55     grayScale
     56 } colorSpaceDisposition;
     57 
     58 typedef enum {
     59     debugOn,
     60     debugOff
     61 } debugDisposition;
     62 
     63 typedef enum {
     64     compressRLE,
     65     compressDCT,
     66     compressFlate,
     67     compressDefault,
     68     compressNone
     69 } compressionDisposition;
     70 
     71 typedef enum {
     72     portraitOrientation,
     73     landscapeOrientation
     74 } mediaOrientationDisposition;
     75 
     76 typedef enum {
     77     res300,
     78     res600,
     79     res1200
     80 } renderResolution;
     81 
     82 typedef enum {
     83     top_left,
     84     bottom_right
     85 } pageOriginType;
     86 
     87 typedef enum {
     88     color_content,
     89     gray_content,
     90     unknown_content
     91 } pageCromaticContent;
     92 
     93 typedef enum {
     94     draft,
     95     normal,
     96     best,
     97 } pageOutputQuality;
     98 
     99 typedef enum {
    100     alternate,
    101     alternate_roll,
    102     auto_select,
    103     bottom,
    104     center,
    105     disc,
    106     envelope,
    107     hagaki,
    108     large_capacity,
    109     left,
    110     main_tray,
    111     main_roll,
    112     manual,
    113     middle,
    114     photo,
    115     rear,
    116     right,
    117     side,
    118     top,
    119     tray_1,
    120     tray_2,
    121     tray_3,
    122     tray_4,
    123     tray_5,
    124     tray_N,
    125 } jobInputBin;
    126 
    127 typedef enum {
    128     top_output,
    129     middle_output,
    130     bottom_output,
    131     side_output,
    132     center_output,
    133     rear_output,
    134     face_up,
    135     face_down,
    136     large_capacity_output,
    137     stacker_N,
    138     mailbox_N,
    139     tray_1_output,
    140     tray_2_output,
    141     tray_3_output,
    142     tray_4_output,
    143 } jobOutputBin;
    144 
    145 typedef struct {
    146     pageCromaticContent userCromaticMode;
    147     pageOutputQuality userPageQuality;
    148     mediaOrientationDisposition userOrientation;
    149     char userMediaType[256];
    150     jobInputBin userInputBin;
    151     int userCopies;
    152     char userDocumentName[256];
    153     jobOutputBin userOutputBin;
    154 } PCLmSUserSettingsType;
    155 
    156 typedef struct {
    157     char mediaSizeName[256];
    158     char clientLocale[256];
    159     float mediaHeight;
    160     float mediaWidth;
    161     float sourceHeight;
    162     float sourceWidth;
    163     float mediaWidthOffset;
    164     float mediaHeightOffset;
    165     pageCromaticContent colorContent; // Did the page contain any "real" color
    166     pageOriginType pageOrigin;
    167     compressionDisposition compTypeRequested;
    168     colorSpaceDisposition srcColorSpaceSpefication;
    169     colorSpaceDisposition dstColorSpaceSpefication;
    170     int stripHeight;
    171     renderResolution destinationResolution;
    172 
    173     duplexDispositionEnum duplexDisposition;
    174     int scaleFactor;
    175     bool genExtraPage;
    176     bool mirrorBackside;
    177     int mediaWidthInPixels;
    178     int mediaHeightInPixels;
    179     int SourceWidthPixels;
    180     int SourceHeightPixels;
    181 } PCLmPageSetup;
    182 
    183 typedef enum {
    184     success = 0,
    185     genericFailure = -1,
    186 } PCLmGenerator_returnType;
    187 
    188 #endif