/*********************************************************************** * * Copyright (C) 2005-2006 Novell, Inc. All Rights Reserved. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; version 2.1 * of the License. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, Novell, Inc. * * To contact Novell about this file by physical or electronic mail, * you may find current contact information at www.novell.com. * ***********************************************************************/ #if ! defined ( NWQMS_H ) #define NWQMS_H #if ! defined ( NWCALDEF_H ) # include "nwcaldef.h" #endif #include "npackon.h" #ifdef __cplusplus extern "C" { #endif #define QF_AUTO_START 0x08 #define QF_ENTRY_RESTART 0x10 #define QF_ENTRY_OPEN 0x20 #define QF_USER_HOLD 0x40 #define QF_OPERATOR_HOLD 0x80 #define QS_CANT_ADD_JOBS 0x01 #define QS_SERVERS_CANT_ATTACH 0x02 #define QS_CANT_SERVICE_JOBS 0x04 /* This struct is taken from NLM platform in the nwqueue.h file. This structure is the format for a print queue only. Other queue types might have different structures. Used with the clientRecordArea field in some of the structures listed below. */ typedef struct { nuint8 versionNumber; nuint8 tabSize; nuint16 numberOfCopies; nuint16 printControlFlags; nuint16 maxLinesPerPage; nuint16 maxCharsPerLine; nuint8 formName[13]; nuint8 reserve[9]; nuint8 bannerNameField[13]; nuint8 bannerFileField[13]; nuint8 bannerFileName[14]; nuint8 directoryPath[80]; } QueuePrintJobStruct; typedef struct { nuint8 clientStation; nuint8 clientTask; nuint32 clientID; nuint32 targetServerID; nuint8 targetExecutionTime[6]; nuint8 jobEntryTime[6]; nuint16 jobNumber; nuint16 jobType; nuint8 jobPosition; nuint8 jobControlFlags; nuint8 jobFileName[14]; nuint8 jobFileHandle[6]; nuint8 servicingServerStation; nuint8 servicingServerTask; nuint32 servicingServerID; nuint8 jobDescription[50]; nuint8 clientRecordArea[152]; } QueueJobStruct; typedef struct { nuint8 clientStation; nuint8 clientTask; nuint32 clientID; nuint32 targetServerID; nuint8 targetExecutionTime[6]; nuint8 jobEntryTime[6]; nuint16 jobNumber; nuint16 jobType; nuint8 jobPosition; nuint8 jobControlFlags; nuint8 jobFileName[14]; nuint8 jobFileHandle[6]; nuint8 servicingServerStation; nuint8 servicingServerTask; nuint32 servicingServerID; } ReplyJobStruct; typedef struct { nuint32 clientStation; nuint32 clientTask; nuint32 clientID; nuint32 targetServerID; nuint8 targetExecutionTime[6]; nuint8 jobEntryTime[6]; nuint32 jobNumber; nuint16 jobType; nuint16 jobPosition; nuint16 jobControlFlags; nuint8 jobFileName[14]; nuint32 jobFileHandle; nuint32 servicingServerStation; nuint32 servicingServerTask; nuint32 servicingServerID; nuint8 jobDescription[50]; nuint8 clientRecordArea[152]; } NWQueueJobStruct; typedef struct { nuint32 clientStation; nuint32 clientTask; nuint32 clientID; nuint32 targetServerID; nuint8 targetExecutionTime[6]; nuint8 jobEntryTime[6]; nuint32 jobNumber; nuint16 jobType; nuint16 jobPosition; nuint16 jobControlFlags; nuint8 jobFileName[14]; nuint32 jobFileHandle; nuint32 servicingServerStation; nuint32 servicingServerTask; nuint32 servicingServerID; } NWReplyJobStruct; typedef struct { nuint32 totalQueueJobs; nuint32 replyQueueJobNumbers; nuint32 jobNumberList[250]; /* 250 to hold job #'s for old NCP*/ } QueueJobListReply; N_EXTERN_LIBRARY( NWCCODE ) NWCreateQueueFile ( NWCONN_HANDLE conn, nuint32 queueID, QueueJobStruct N_FAR * job, NWFILE_HANDLE N_FAR * fileHandle ); N_EXTERN_LIBRARY( NWCCODE ) NWCreateQueueFile2 ( NWCONN_HANDLE conn, nuint32 queueID, NWQueueJobStruct N_FAR * job, NWFILE_HANDLE N_FAR * fileHandle ); N_EXTERN_LIBRARY( NWCCODE ) NWCloseFileAndStartQueueJob ( NWCONN_HANDLE conn, nuint32 queueID, nuint16 jobNumber, NWFILE_HANDLE fileHandle ); N_EXTERN_LIBRARY( NWCCODE ) NWCloseFileAndStartQueueJob2 ( NWCONN_HANDLE conn, nuint32 queueID, nuint32 jobNumber, NWFILE_HANDLE fileHandle ); N_EXTERN_LIBRARY( NWCCODE ) NWCloseFileAndAbortQueueJob ( NWCONN_HANDLE conn, nuint32 queueID, nuint16 jobNumber, NWFILE_HANDLE fileHandle ); N_EXTERN_LIBRARY( NWCCODE ) NWCloseFileAndAbortQueueJob2 ( NWCONN_HANDLE conn, nuint32 queueID, nuint32 jobNumber, NWFILE_HANDLE fileHandle ); N_EXTERN_LIBRARY( NWCCODE ) NWRemoveJobFromQueue ( NWCONN_HANDLE conn, nuint32 queueID, nuint16 jobNumber ); N_EXTERN_LIBRARY( NWCCODE ) NWRemoveJobFromQueue2 ( NWCONN_HANDLE conn, nuint32 queueID, nuint32 jobNumber ); N_EXTERN_LIBRARY( NWCCODE ) NWGetQueueJobList ( NWCONN_HANDLE conn, nuint32 queueID, pnuint16 jobCount, pnuint16 jobList ); N_EXTERN_LIBRARY( NWCCODE ) NWGetQueueJobList2 ( NWCONN_HANDLE conn, nuint32 queueID, nuint32 queueStartPos, QueueJobListReply N_FAR * job ); N_EXTERN_LIBRARY( NWCCODE ) NWReadQueueJobEntry ( NWCONN_HANDLE conn, nuint32 queueID, nuint16 jobNumber, QueueJobStruct N_FAR * job ); N_EXTERN_LIBRARY( NWCCODE ) NWReadQueueJobEntry2 ( NWCONN_HANDLE conn, nuint32 queueID, nuint32 jobNumber, NWQueueJobStruct N_FAR * job ); N_EXTERN_LIBRARY( NWCCODE ) NWGetQueueJobFileSize ( NWCONN_HANDLE conn, nuint32 queueID, nuint16 jobNumber, pnuint32 fileSize ); N_EXTERN_LIBRARY( NWCCODE ) NWGetQueueJobFileSize2 ( NWCONN_HANDLE conn, nuint32 queueID, nuint32 jobNumber, pnuint32 fileSize ); N_EXTERN_LIBRARY( NWCCODE ) NWChangeQueueJobEntry ( NWCONN_HANDLE conn, nuint32 queueID, const QueueJobStruct N_FAR * job ); N_EXTERN_LIBRARY( NWCCODE ) NWChangeQueueJobEntry2 ( NWCONN_HANDLE conn, nuint32 queueID, const NWQueueJobStruct N_FAR * job ); N_EXTERN_LIBRARY( NWCCODE ) NWChangeQueueJobPosition ( NWCONN_HANDLE conn, nuint32 queueID, nuint16 jobNumber, nuint8 newJobPos ); N_EXTERN_LIBRARY( NWCCODE ) NWChangeQueueJobPosition2 ( NWCONN_HANDLE conn, nuint32 queueID, nuint32 jobNumber, nuint32 newJobPos ); N_EXTERN_LIBRARY( NWCCODE ) NWServiceQueueJob ( NWCONN_HANDLE conn, nuint32 queueID, nuint16 targetJobType, QueueJobStruct N_FAR * job, NWFILE_HANDLE N_FAR * fileHandle ); N_EXTERN_LIBRARY( NWCCODE ) NWServiceQueueJob2 ( NWCONN_HANDLE conn, nuint32 queueID, nuint16 targetJobType, NWQueueJobStruct N_FAR * job, NWFILE_HANDLE N_FAR * fileHandle ); N_EXTERN_LIBRARY( NWCCODE ) NWAbortServicingQueueJob ( NWCONN_HANDLE conn, nuint32 QueueID, nuint16 JobNumber, NWFILE_HANDLE fileHandle ); N_EXTERN_LIBRARY( NWCCODE ) NWAbortServicingQueueJob2 ( NWCONN_HANDLE conn, nuint32 QueueID, nuint32 JobNumber, NWFILE_HANDLE fileHandle ); N_EXTERN_LIBRARY( NWCCODE ) NWChangeToClientRights ( NWCONN_HANDLE conn, nuint32 queueID, nuint16 jobNumber ); N_EXTERN_LIBRARY( NWCCODE ) NWChangeToClientRights2 ( NWCONN_HANDLE conn, nuint32 queueID, nuint32 jobNumber ); N_EXTERN_LIBRARY( NWCCODE ) NWFinishServicingQueueJob ( NWCONN_HANDLE conn, nuint32 queueID, nuint16 jobNumber, NWFILE_HANDLE fileHandle ); N_EXTERN_LIBRARY( NWCCODE ) NWFinishServicingQueueJob2 ( NWCONN_HANDLE conn, nuint32 queueID, nuint32 jobNumber, NWFILE_HANDLE fileHandle ); N_EXTERN_LIBRARY( NWCCODE ) NWGetPrinterQueueID ( NWCONN_HANDLE conn, nuint16 printerNum, pnuint32 queueID ); N_EXTERN_LIBRARY( NWCCODE ) NWCreateQueue ( NWCONN_HANDLE conn, pnstr8 queueName, nuint16 queueType, nuint8 dirPath, pnstr8 path, pnuint32 queueID ); N_EXTERN_LIBRARY( NWCCODE ) NWDestroyQueue ( NWCONN_HANDLE conn, nuint32 queueID ); N_EXTERN_LIBRARY( NWCCODE ) NWReadQueueCurrentStatus ( NWCONN_HANDLE conn, nuint32 queueID, pnuint8 queueStatus, pnuint16 numberOfJobs, pnuint16 numberOfServers, pnuint32 serverIDlist, pnuint16 serverConnList ); N_EXTERN_LIBRARY( NWCCODE ) NWReadQueueCurrentStatus2 ( NWCONN_HANDLE conn, nuint32 queueID, pnuint32 queueStatus, pnuint32 numberOfJobs, pnuint32 numberOfServers, pnuint32 serverIDlist, pnuint32 serverConnList ); N_EXTERN_LIBRARY( NWCCODE ) NWSetQueueCurrentStatus ( NWCONN_HANDLE conn, nuint32 queueID, nuint8 queueStatus ); N_EXTERN_LIBRARY( NWCCODE ) NWSetQueueCurrentStatus2 ( NWCONN_HANDLE conn, nuint32 queueID, nuint32 queueStatus ); N_EXTERN_LIBRARY( NWCCODE ) NWReadQueueServerCurrentStatus ( NWCONN_HANDLE conn, nuint32 queueID, nuint32 serverID, nuint16 serverConn, nptr statusRec ); N_EXTERN_LIBRARY( NWCCODE ) NWReadQueueServerCurrentStatus2 ( NWCONN_HANDLE conn, nuint32 queueID, nuint32 serverID, nuint32 serverConn, nptr statusRec ); N_EXTERN_LIBRARY( NWCCODE ) NWAttachQueueServerToQueue ( NWCONN_HANDLE conn, nuint32 queueID ); N_EXTERN_LIBRARY( NWCCODE ) NWDetachQueueServerFromQueue ( NWCONN_HANDLE conn, nuint32 queueID ); N_EXTERN_LIBRARY( NWCCODE ) NWRestoreQueueServerRights ( NWCONN_HANDLE conn ); N_EXTERN_LIBRARY( NWCCODE ) NWSetQueueServerCurrentStatus ( NWCONN_HANDLE conn, nuint32 queueID, const void N_FAR * statusRec ); #ifdef __cplusplus } #endif #include "npackoff.h" #endif