217 lines
5.5 KiB
RPGLE
217 lines
5.5 KiB
RPGLE
**FREE
|
|
//=====================================================================
|
|
//
|
|
// Project.....: MEDDFN
|
|
//
|
|
// Member......: MEDDFN_H
|
|
//
|
|
// Description.: Common project definitions.
|
|
//
|
|
// This member contains project wide definitions that are
|
|
// independent from IBM APIs.
|
|
//
|
|
// IBM API prototypes and API structures are located in
|
|
// MEDDFNAPI_H.
|
|
//
|
|
// Author......: Eckhard Gosch
|
|
//
|
|
//=====================================================================
|
|
|
|
|
|
//=====================================================================
|
|
// Project Information
|
|
//=====================================================================
|
|
|
|
dcl-s MD_ProjectName varchar(16) inz('MEDDFN') const;
|
|
dcl-s MD_Version varchar(10) inz('1.0.0') const;
|
|
|
|
|
|
//=====================================================================
|
|
// Project Limits
|
|
//=====================================================================
|
|
|
|
dcl-s MD_MaxDeviceDefinitions int(10) inz(32) const;
|
|
dcl-s MD_MaxMediaDefinitions int(10) inz(32) const;
|
|
dcl-s MD_MaxVolumeIdentifiers int(10) inz(75) const;
|
|
|
|
|
|
//=====================================================================
|
|
// Public Authority
|
|
//=====================================================================
|
|
|
|
dcl-s MD_PublicUse char(10) inz('*USE') const;
|
|
dcl-s MD_PublicChange char(10) inz('*CHANGE') const;
|
|
dcl-s MD_PublicAll char(10) inz('*ALL') const;
|
|
dcl-s MD_PublicExclude char(10) inz('*EXCLUDE') const;
|
|
dcl-s MD_PublicLibCrtAut char(10) inz('*LIBCRTAUT') const;
|
|
|
|
|
|
//=====================================================================
|
|
// Device Allocation
|
|
//=====================================================================
|
|
|
|
dcl-s MD_DeviceAllocateAll int(10) inz(0) const;
|
|
dcl-s MD_DeviceAllocateOne int(10) inz(1) const;
|
|
dcl-s MD_DeviceAllocateMinimum int(10) inz(2) const;
|
|
|
|
|
|
//=====================================================================
|
|
// Save Format
|
|
//=====================================================================
|
|
|
|
dcl-s MD_SaveFormatAuto int(10) inz(-2) const;
|
|
dcl-s MD_SaveFormatSerial int(10) inz(-1) const;
|
|
dcl-s MD_SaveFormatParallel int(10) inz(0) const;
|
|
dcl-s MD_VOLUME_ID_LENGTH int(5) inz(6) const;
|
|
|
|
//=====================================================================
|
|
// Volume Identifier
|
|
//=====================================================================
|
|
|
|
dcl-ds MD_VolumeIdentifier_T qualified template;
|
|
|
|
VolumeIdentifier char(6);
|
|
|
|
end-ds;
|
|
|
|
|
|
//=====================================================================
|
|
// Media File Definition
|
|
//=====================================================================
|
|
|
|
// dcl-ds MD_MediaFileDefinition_T qualified template;
|
|
//
|
|
// SequenceNumber int(10);
|
|
//
|
|
// StartingPosition char(32);
|
|
//
|
|
// VolumeIdentifierCount int(10);
|
|
//
|
|
// end-ds;
|
|
|
|
|
|
//=====================================================================
|
|
// Device Definition
|
|
//=====================================================================
|
|
|
|
//dcl-ds MD_DeviceDefinition_T qualified template;
|
|
//
|
|
// DeviceName char(10);
|
|
//
|
|
// MediaDefinitionCount int(10);
|
|
//
|
|
//end-ds;
|
|
|
|
|
|
|
|
|
|
//=====================================================================
|
|
//
|
|
// Builder Context
|
|
//
|
|
// Used internally by MEDDFNBLD.
|
|
//
|
|
//=====================================================================
|
|
|
|
dcl-ds MD_BuilderContext_T qualified template;
|
|
|
|
Buffer char(32767);
|
|
|
|
BufferLength int(10);
|
|
|
|
end-ds;
|
|
|
|
|
|
|
|
//=====================================================================
|
|
//
|
|
// Device Definition
|
|
//
|
|
//=====================================================================
|
|
|
|
dcl-ds MD_Device_T qualified template;
|
|
|
|
DeviceName char(10);
|
|
|
|
end-ds;
|
|
|
|
|
|
|
|
//=====================================================================
|
|
//
|
|
// Media File Definition
|
|
//
|
|
// One media file belongs to exactly one tape device.
|
|
//
|
|
//=====================================================================
|
|
|
|
dcl-ds MD_MediaFile_T qualified template;
|
|
|
|
SequenceNumber int(10);
|
|
|
|
StartingPositionInFile char(32);
|
|
|
|
NumberOfVolumeIdentifiers int(10);
|
|
|
|
VolumeIdentifier likeds(MD_VolumeIdentifier_T)
|
|
dim(75);
|
|
|
|
end-ds;
|
|
|
|
|
|
|
|
//=====================================================================
|
|
//
|
|
// Media Device
|
|
//
|
|
// One device contains one or more media files.
|
|
//
|
|
//=====================================================================
|
|
|
|
dcl-ds MD_MediaDevice_T qualified template;
|
|
|
|
DeviceName char(10);
|
|
|
|
NumberOfMediaFiles int(10);
|
|
|
|
MediaFile likeds(MD_MediaFile_T)
|
|
dim(32);
|
|
|
|
end-ds;
|
|
|
|
|
|
|
|
//=====================================================================
|
|
//
|
|
// Media Definition
|
|
//
|
|
// Business object.
|
|
//
|
|
//=====================================================================
|
|
|
|
dcl-ds MD_MediaDefinition_T qualified template;
|
|
|
|
MediaDefinitionName char(10);
|
|
|
|
LibraryName char(10);
|
|
|
|
TextDescription char(50);
|
|
|
|
Replace ind;
|
|
|
|
DeviceAllocation int(10);
|
|
|
|
SaveFormat int(10);
|
|
|
|
MaximumParallelResources int(10);
|
|
|
|
MinimumParallelResources int(10);
|
|
|
|
NumberOfDevices int(10);
|
|
|
|
Device likeds(MD_MediaDevice_T)
|
|
dim(32);
|
|
|
|
end-ds;
|
|
|