/********************************************************************************************************************************/ /* Created 12-JUN-2007 22:00:51 by VAX SDL V3.2-12 Source: 25-APR-1995 15:50:30 DISK$DFO_BUILD:[DEFRAG.V30.SRC]DFG$DEF.SDL;1 */ /********************************************************************************************************************************/ /*** MODULE $DFG$DEF ***/ /* */ /* Copyright © Digital Equipment Corporation, 1991-1995 All Rights Reserved. */ /* */ /* Unpublished rights reserved under the copyright laws of the United States. */ /* The software contained on this media is proprietary to and embodies the */ /* confidential technology of Digital Equipment Corporation. Possession, */ /* use, duplication or dissemination of the software and media is authorized */ /* only pursuant to a valid written license from Digital Equipment */ /* Corporation. */ /* */ /* RESTRICTED RIGHTS LEGEND: Use, duplication, or disclosure by the U.S. */ /* Government is subject to restrictions as set forth in Subparagraph */ /* (c)(1)(ii) of DFARS 252.227-7013, or in FAR 52.227-19, as applicable. */ /* */ #define DFG$K_ABORT 1 /* sch/DB only; ABORT script */ #define DFG$K_AFTER 2 /* sch/DB only; Schedule AFTER timespec */ #define DFG$K_CANCEL 3 /* sch/DB only; Cancel next execution of script */ #define DFG$K_CLASSIFY_DORM 4 /* dfg only; DORMANT files */ #define DFG$K_CLASSIFY_FREQ 5 /* dfg only; FREQUENTLY accessed files */ #define DFG$K_DFG_FLAGS 6 /* dfg only; Flags. */ #define DFG$K_DISABLE 7 /* sch/DB only; Disable specified script(s) */ #define DFG$K_ENABLE 8 /* sch/DB only; Enable specified script(s) */ #define DFG$K_EXCLUDE 9 /* dfg only; EXCLUDE these */ #define DFG$K_INHERIT 10 /* sch/DB only; INHERIT script */ #define DFG$K_INTERVAL 11 /* sch/DB only; INTERVAL timespec */ #define DFG$K_LOG 12 /* dfg only; LOG=file-spec */ #define DFG$K_MONITOR 13 /* sch/DB only; Turn on monitoring of specific engine */ #define DFG$K_NODE 14 /* sch/DB only; NODE name */ #define DFG$K_OPTIONS 15 /* dfg only; OPTIONS=file-spec */ #define DFG$K_OUTPUT 16 /* sch/DB only; OUTPUT=file-spec */ #define DFG$K_PREDECESSOR 17 /* sch/DB only; PREDECESSOR=script */ #define DFG$K_REMOVE 18 /* sch/DB only; REMOVE=script */ #define DFG$K_SCH_FLAGS 19 /* sch/DB only; flags */ #define DFG$K_SCRIPT 20 /* sch/DB only; SCRIPT=script-name */ #define DFG$K_SET_CPU 21 /* sch/DB only; set max cpu % */ #define DFG$K_SET_IO 22 /* sch/DB only; set max io% */ #define DFG$K_SET_PROCESSES 23 /* sch/DB only; set max dfgs */ #define DFG$K_SHOW_CPU 24 /* sch/DB only; Max cpu setting */ #define DFG$K_SHOW_IO 25 /* sch/DB only; Max IO setting */ #define DFG$K_SHOW_PROCESSES 26 /* sch/DB only; show max proc */ #define DFG$K_SHOW_SCRIPT 27 /* sch/DB only; Show script */ #define DFG$K_START 28 /* sch/DB only; Start already-defined script */ #define DFG$K_TIME_LIMIT 29 /* sch/DB only; TIME_LIMIT=timespec */ #define DFG$K_VOLUME 30 /* dfg only; VOLUME=volume-name */ #define DFG$K_FILE 31 /* dfg only; List of files to defragment */ #define DFG$K_MODIFY 32 /* sch/DB only; modify existing script */ #define DFG$K_PRE_PROCESS 33 /* dfg only; pre-processing command file */ #define DFG$K_POST_PROCESS 34 /* dfg only; post-processing command file */ #define DFG$K_OFFLINE 35 /* dfg only; If this is a defrag of INDEXF.SYS */ #define DFG$K_MAX_ITEM_CODE 35 #define DFG$K_SHOW_SCRIPT_DFG_FLAGS 1 #define DFG$K_SHOW_SCRIPT_DORMANT 2 #define DFG$K_SHOW_SCRIPT_ENABLE 3 #define DFG$K_SHOW_SCRIPT_EXCLUDE 4 #define DFG$K_SHOW_SCRIPT_FREQUENT 5 #define DFG$K_SHOW_SCRIPT_INTERVAL 6 #define DFG$K_SHOW_SCRIPT_LOG 7 #define DFG$K_SHOW_SCRIPT_NODE 8 #define DFG$K_SHOW_SCRIPT_OPTIONS 9 #define DFG$K_SHOW_SCRIPT_PREDECESSOR 10 #define DFG$K_SHOW_SCRIPT_Q_ACTION 11 #define DFG$K_SHOW_SCRIPT_Q_CANCEL 12 #define DFG$K_SHOW_SCRIPT_Q_REMAINING 13 #define DFG$K_SHOW_SCRIPT_Q_START_TIME 14 #define DFG$K_SHOW_SCRIPT_Q_STATUS 15 #define DFG$K_SHOW_SCRIPT_SCH_FLAGS 16 #define DFG$K_SHOW_SCRIPT_SCRIPT 17 #define DFG$K_SHOW_SCRIPT_SUCCESSOR 18 #define DFG$K_SHOW_SCRIPT_TIME_LIMIT 19 #define DFG$K_SHOW_SCRIPT_VOLUME 20 #define DFG$K_SHOW_SCRIPT_FILE 21 #define DFG$K_SHOW_SCRIPT_POST_PROC 22 #define DFG$K_SHOW_SCRIPT_PRE_PROC 23 #define DFG$K_MAX_SHOW_SCRIPT_CODES 23 #define DFG$K_ABORT_ISSUED 1 #define DFG$K_ABORT_NOT_ISSUED 2 #define DFG$K_ENGINE_ABORTED 3 #define DFG$K_ENGINE_TERMINATED 4 #define DFG$M_CONTINUOUS 1 #define DFG$M_FILE_COMMAND 2 #define DFG$M_SPARE_SCH -4 struct SCH_FLAGS { unsigned DFG$V_CONTINUOUS : 1; unsigned DFG$V_FILE_COMMAND : 1; unsigned DFG$V_SPARE_SCH : 30; } ; #define DFG$K_ALL_SCH_FLAGS 3 #define DFG$M_OFFLINE_MODE 1 #define DFG$M_FULL 2 #define DFG$M_HONOR 4 #define DFG$M_INDEXED 8 #define DFG$M_LEVEL 112 #define DFG$M_LOG 128 #define DFG$M_NOTIFY 256 #define DFG$M_VOLSET 512 #define DFG$M_WRITE_CHECK 1024 #define DFG$M_DEFAULT_PRIORITY 63488 #define DFG$M_ISSUE_OPCOM 65536 #define DFG$M_LOW_PRIORITY 4063232 #define DFG$M_USE_VPA 4194304 #define DFG$M_RVN_TO_DEFRAG 2139095040 #define DFG$M_CONSOLIDATE_FREESPACE -2147483648 struct DFG_FLAGS { unsigned DFG$V_OFFLINE_MODE : 1; /* Supersedes "ERASE" bit */ unsigned DFG$V_FULL : 1; /* Use Full option for error log */ unsigned DFG$V_HONOR : 1; /* Honor file placement in header */ unsigned DFG$V_INDEXED : 1; /* Ok to place indexed files */ unsigned DFG$V_LEVEL : 3; /* Defrag level */ unsigned DFG$V_LOG : 1; /* Log file needed from defrag */ unsigned DFG$V_NOTIFY : 1; /* Notify on start/complete via opcom */ unsigned DFG$V_VOLSET : 1; /* Volume is a volume set */ unsigned DFG$V_WRITE_CHECK : 1; /* Perform write check on every file moved */ unsigned DFG$V_DEFAULT_PRIORITY : 5; /* Def priority of DFO proc */ unsigned DFG$V_ISSUE_OPCOM : 1; /* Whether to issue opcom msgs */ unsigned DFG$V_LOW_PRIORITY : 5; /* Lowest priority of DFO proc */ unsigned DFG$V_USE_VPA : 1; /* Call DECps (VPA) for hotfiles */ unsigned DFG$V_RVN_TO_DEFRAG : 8; /* RVN of multivolume set (0 for all) */ unsigned DFG$V_CONSOLIDATE_FREESPACE : 1; /* Consolidate freespace */ } ; #define DFG$K_ALL_DFG_FLAGS -1 #define DFG$K_MIN_DEFRAG_LEVEL 0 #define DFG$K_LEVEL_1 0 /* Candidates: all files that are not contiguous */ #define DFG$K_LEVEL_2 1 /* Candidates: all files that have more than a */ /* window-turn's worth of extents */ #define DFG$K_LEVEL_3 2 /* Candidates: all files that have more than one */ /* header */ #define DFG$K_LEVEL_4 3 /* Free space consolidation only */ #define DFG$K_LEVEL_5 4 /* No defragmentation; analysis only */ #define DFG$K_MAX_DEFRAG_LEVEL 4 struct INHERIT_MASK { unsigned DFG$V_INHERIT_AFTER : 1; unsigned DFG$V_INHERIT_DORMANT : 1; unsigned DFG$V_INHERIT_EXCLUDE : 1; unsigned DFG$V_INHERIT_FREQUENT : 1; unsigned DFG$V_INHERIT_INTERVAL : 1; unsigned DFG$V_INHERIT_LOG : 1; unsigned DFG$V_INHERIT_NODE : 1; unsigned DFG$V_INHERIT_OPTIONS : 1; unsigned DFG$V_INHERIT_PREDECESSOR : 1; unsigned DFG$V_INHERIT_TIME_LIMIT : 1; unsigned DFG$V_INHERIT_FILE : 1; unsigned DFG$V_INHERIT_POST_PROC : 1; unsigned DFG$V_INHERIT_PRE_PROC : 1; unsigned DFG$V_INHERIT_SCRIPT : 1; unsigned DFG$V_INHERIT_FILL : 18; } ; #define DFG$K_ALL_SCRIPTS 67305985 #define DFG$K_SCRIPT_NAME_MAX_SIZE 64 #define DFG$K_HIGH_PRIORITY 15