Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

116 lines
2.3 KiB

/*++
Copyright (c) 1996 Microsoft Corporation
Module Name:
forms.h
Abstract:
Declaration of functions for dealing with forms
Environment:
Fax driver, user and kernel mode
Revision History:
01/09/96 -davidx-
Created it.
dd-mm-yy -author-
description
--*/
#ifndef _FORMS_H_
#define _FORMS_H_
//
// This is defined in winspool.h but we cannot include it from
// kernel mode source. Define it here until DDI header files are fixed.
//
#if defined(KERNEL_MODE) && !defined(USERMODE_DRIVER)
typedef struct _FORM_INFO_1 {
DWORD Flags;
PWSTR pName;
SIZEL Size;
RECTL ImageableArea;
} FORM_INFO_1, *PFORM_INFO_1;
#define FORM_BUILTIN 0x00000001
typedef struct _PRINTER_INFO_2 {
PWSTR pServerName;
PWSTR pPrinterName;
PWSTR pShareName;
PWSTR pPortName;
PWSTR pDriverName;
PWSTR pComment;
PWSTR pLocation;
PDEVMODEW pDevMode;
PWSTR pSepFile;
PWSTR pPrintProcessor;
PWSTR pDatatype;
PWSTR pParameters;
PSECURITY_DESCRIPTOR pSecurityDescriptor;
DWORD Attributes;
DWORD Priority;
DWORD DefaultPriority;
DWORD StartTime;
DWORD UntilTime;
DWORD Status;
DWORD cJobs;
DWORD AveragePPM;
} PRINTER_INFO_2, *PPRINTER_INFO_2;
#endif // KERNEL_MODE && !USERMODE_DRIVER
//
// We use the highest order bit of FORM_INFO_1.Flags.
// Make sure the spooler is not using this bits.
//
#define FORM_SUPPORTED 0x80000000
#define IsSupportedForm(pForm) ((pForm)->Flags & FORM_SUPPORTED)
#define SetSupportedForm(pForm) ((pForm)->Flags |= FORM_SUPPORTED)
//
// Our internal unit for measuring paper size and imageable area is microns.
// Following macros converts between microns and pixels, given a resolution
// measured in dots-per-inch.
//
#define MicronToPixel(micron, dpi) MulDiv(micron, dpi, 25400)
//
// Validate the form specification in a devmode
//
BOOL
ValidDevmodeForm(
HANDLE hPrinter,
PDEVMODE pdm,
PFORM_INFO_1 pFormInfo
);
//
// Return a collection of forms in the system database
//
PFORM_INFO_1
GetFormsDatabase(
HANDLE hPrinter,
PDWORD pCount
);
#endif // !_FORMS_H_