Source code of Windows XP (NT5)
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.
 
 
 
 
 
 

2069 lines
70 KiB

--#comment "Copyright (C) Microsoft Corporation, 1998-1999. All rights reserved."--
--#comment "ASN.1 definitions for Whiteboard"--
--#SS.basic slinked-- -- set of and sequence of w/o size constraint
--#SS.sized slinked-- -- set of and sequence of w/ size constraint
-- Begin SI Definitions
SI-PROTOCOL DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
-- NOTE: All abstract types defined shall be exported.
-- ArchiveEntryName
-- Name used to reference an archive entry.
ArchiveEntryName ::= BMPString (SIZE (1..256)) --#nocode--
-- ArchiveError
-- Specifies the cause of an error at a remote terminal during
-- a workspace archive operation.
ArchiveError ::= CHOICE
{
entryNotFound NULL,
-- The terminal does not have the entry that matches the
-- archive name being accessed for reading, editing, or
-- deletion.
entryExists NULL,
-- The terminal already has an archive entry that matches
-- the name of the archive entry name being created.
storageExceeded NULL,
-- The terminal does not have sufficient memory to store
-- the requested information.
archiveNoLongerAvailable NULL,
-- The archive indicated is no longer available.
unspecifiedError NULL,
-- A general error that is not previously defined has occurred.
nonStandardError NonStandardIdentifier,
-- Non-standard error code.
...
} --#nocode--
-- ArchiveHeader
-- This type specifies the parameters used to address archives
-- stored at remote terminals.
ArchiveHeader ::= SEQUENCE
{
archiveName ArchiveName,
-- Name of the archive.
archiveCreationTime GeneralizedTime,
-- Time and date of the creation of the archive.
archiveModificationTime GeneralizedTime,
-- Time and date of the most recent modification of the archive.
...
} --#nocode--
-- ArchiveMode
-- One of the following sets of access modes must be indicated
-- when an archive is opened.
ArchiveMode ::= SEQUENCE
{
create BOOLEAN,
-- TRUE indicates that the archive shall be created. If an archive with
-- the same name exists, the operation should fail.
read BOOLEAN,
-- TRUE indicates that the archive shall be opened for reading only.
write BOOLEAN,
-- TRUE indicates that the archive shall be opened for writing.
...
} --#nocode--
-- ArchiveName
-- Name used to reference an archive.
ArchiveName ::= BMPString (SIZE (1..256))
-- ArchiveOpenResult
-- Specifies the result of an archive open request.
ArchiveOpenResult ::= CHOICE
{
archiveOpenSuccessful NULL,
-- The requested archive was successfully opened.
archiveNotFound NULL,
-- An archive to be opened for reading or writing was
-- not found to exist.
archiveTimeIncorrect ArchiveHeader,
-- An archive to be opened for reading or writing was found,
-- but with incorrect creation or modification time. The
-- actual header is included in the error response in this case.
archiveExists NULL,
-- An archive to be opened for creation already exists and will
-- not be overwritten.
archiveOpenForWriting NULL,
-- An archive to be opened for writing is already open for writing.
storageExceeded NULL,
-- The terminal does not have sufficient memory to store the
-- requested archive.
unspecifiedError NULL,
-- An unspecified error has occurred preventing the archive
-- from being opened.
nonStandardResult NonStandardIdentifier,
-- Non-standard result code.
...
} --#nocode--
-- BitmapAbortReason
-- These values represent the possible reason codes
-- for the BitmapAbortPDU.
BitmapAbortReason ::= CHOICE
{
unspecified NULL,
-- Bitmap aborted for an unspecified reason.
noResources NULL,
-- Bitmap creation failed due to local resource management
-- problems.
outOfPaper NULL,
-- Bitmap creation failed because the receiving terminal is
-- out of paper.
nonStandardReason NonStandardParameter,
...
}
-- BitmapAttribute
-- This CHOICE represents the list of possible bitmap attributes.
BitmapAttribute ::= CHOICE
{
viewState ViewState,
-- Indicates the state.
zOrder ZOrder,
-- Used to set the bitmap to the front or back of the display
-- list within an addressable plane.
nonStandardAttribute NonStandardParameter,
...,
-- Parameters added during 1st revision
transparencyMask TransparencyMask
}
-- BitmapData
-- All or part of a bitmap bitstream.
BitmapData ::= SEQUENCE
{
dataCheckpoint SEQUENCE (SIZE (1..100)) OF TokenID OPTIONAL,
-- Tokens to uninhibit when the corresponding data is ready
-- for display if checkpointing is enabled for the exchange
padBits INTEGER (1..256) OPTIONAL,
-- Count of bits at the end of the data octets that are not part
-- of the image bitstream and are to be ignored
data OCTET STRING (SIZE (1..8192)),
-- The compression-format-specific bitmap data.
...
}
-- BitmapDestinationAddress
-- Destination address for bitmap exchanges.
BitmapDestinationAddress ::= CHOICE
{
hardCopyDevice NULL,
softCopyImagePlane SoftCopyDataPlaneAddress,
softCopyAnnotationPlane SoftCopyDataPlaneAddress,
softCopyPointerPlane SoftCopyPointerPlaneAddress,
...,
-- Parameters added during 1st revision
nonStandardDestination NonStandardParameter
}
-- BitmapHeaderUncompressed
-- This type specifies the parameters of uncompressed bitmap
-- bitstreams.
BitmapHeaderUncompressed ::= SEQUENCE
{
colorMappingMode CHOICE
{
directMap SEQUENCE
{
colorSpace ColorSpaceSpecifier,
resolutionMode ColorResolutionModeSpecifier
},
paletteMap SEQUENCE
{
colorPalette ColorPalette,
bitsPerPixel INTEGER (1 | 4 | 8)
},
...
},
...
}
-- BitmapHeaderT4
-- Bitmap header for T.4 (G3) encoding
BitmapHeaderT4 ::= SEQUENCE
{
twoDimensionalEncoding BOOLEAN,
-- 2-D encoding if TRUE,
-- 1-D encoding if FALSE
...
}
-- BitmapHeaderT6
-- Bitmap header for T.6 (G4) encoding
BitmapHeaderT6 ::= SEQUENCE
{
...
}
-- BitmapHeaderT81
-- This type is used to specify the parameters necessary to
-- decode and display a T.81 (JPEG) image that are not specified
-- within the T.81 bitstream.
BitmapHeaderT81 ::= SEQUENCE
{
colorSpace ColorSpaceSpecifier,
resolutionMode ColorResolutionModeSpecifier,
...,
-- Parameters added during 1st revision
colorPalette ColorPalette OPTIONAL
-- Color palette to be optionally used by the receiver to render
-- the associated bitmap if the local display device is
-- palette-mapped. This parameter is provided as a
-- convenience for receiver rendering.
}
-- BitmapHeaderT82
-- This type is used to specify the parameters necessary to
-- decode and display a T.82 (JBIG) image that are not specified
-- within the T.82 bitstream.
BitmapHeaderT82 ::= SEQUENCE
{
colorMappingMode CHOICE
{
directMap ColorSpaceSpecifier,
-- Only greyscale and RGB colorspaces are allowed.
paletteMap SEQUENCE
{
bitmapPalette ColorPalette,
progressiveMode CHOICE
{
progressivePalettes SEQUENCE (SIZE (1..8)) OF ColorIndexTable,
selfProgressive NULL,
...
} OPTIONAL
}
},
...
}
-- BitmapRegion
-- This type specifies a rectangular subregion within a bitmap.
BitmapRegion ::= SEQUENCE
{
upperLeft SEQUENCE
{
xCoordinate INTEGER (0..65535),
-- X component of a Cartesian address
yCoordinate INTEGER (0..65535)
-- Y component of a Cartesian address
},
lowerRight SEQUENCE
{
xCoordinate INTEGER (0..65535),
-- X component of a Cartesian address
yCoordinate INTEGER (0..65535)
-- Y component of a Cartesian address
}
}
-- BitmapSize
-- The size of a bitmap in pixels.
BitmapSize ::= SEQUENCE
{
width INTEGER (1..65536),
-- The number of pixels horizontally
height INTEGER (1..65536)
-- The number of pixels vertically
}
-- ButtonEvent
-- Describes pointing device button events.
ButtonEvent ::= CHOICE
{
buttonUp NULL,
-- The button is up.
buttonDown NULL,
-- The button is down.
buttonDoubleClick NULL,
-- A button down event occurred within the double-click
-- time window.
buttonTripleClick NULL,
-- A button down event occurred within the triple-click
-- time window.
buttonQuadClick NULL,
-- A button down event occurred within the quad-click
-- time window.
nonStandardButtonEvent NonStandardIdentifier,
...
}
-- ColorAccuracyEnhancementCIELab
ColorAccuracyEnhancementCIELab ::= CHOICE
{
predefinedCIELabSpace CHOICE
{
nonStandardCIELabSpace NonStandardParameter,
...
},
generalCIELabParameters SEQUENCE
{
colorTemperature INTEGER (0..MAX) OPTIONAL,
-- Color temperature of the white point assumed by the color
-- space (in degrees Kelvin)
gamut SEQUENCE
{
lSpan INTEGER (-32768..32767),
-- max L* - min L*
lOffset INTEGER (-32768..32767),
-- offset of the zero point for L
aSpan INTEGER (-32768..32767),
-- max a* - min a*
aOffset INTEGER (-32768..32767),
-- offset of the zero point for a
bSpan INTEGER (-32768..32767),
-- max b* - min b*
bOffset INTEGER (-32768..32767)
-- offset of the zero point for b
} OPTIONAL,
...
},
...
}
-- ColorAccuracyEnhancementGreyscale
ColorAccuracyEnhancementGreyscale ::= CHOICE
{
predefinedGreyscaleSpace CHOICE
{
nonStandardGreyscaleSpace NonStandardParameter,
...
},
generalGreyscaleParameters SEQUENCE
{
gamma REAL (0..MAX) OPTIONAL,
-- Gamma value of the color space
...
},
...
}
-- ColorAccuracyEnhancementRGB
ColorAccuracyEnhancementRGB ::= CHOICE
{
predefinedRGBSpace CHOICE
{
nonStandardRGBSpace NonStandardParameter,
...
},
generalRGBParameters SEQUENCE
{
gamma REAL (0..MAX) OPTIONAL,
-- Gamma value of the color space
colorTemperature INTEGER (0..MAX) OPTIONAL,
-- Color temperature of the white point assumed by the color
-- space (in degrees Kelvin)
primaries SEQUENCE
{
red ColorCIExyChromaticity,
-- CIE xy chromaticity coordinate of the red primary
green ColorCIExyChromaticity,
-- CIE xy chromaticity coordinate of the green primary
blue ColorCIExyChromaticity
-- CIE xy chromaticity coordinate of the blue primary
} OPTIONAL,
...
},
...
}
-- ColorAccuracyEnhancementYCbCr
ColorAccuracyEnhancementYCbCr ::= CHOICE
{
predefinedYCbCrSpace CHOICE
{
cCIR709 NULL,
nonStandardRGBSpace NonStandardParameter,
...
},
generalYCbCrParameters SEQUENCE
{
gamma REAL (0..MAX) OPTIONAL,
-- Gamma value of the color space
colorTemperature INTEGER (0..MAX) OPTIONAL,
-- Color temperature of the white point assumed by the color
-- space (in degrees Kelvin)
primaries SEQUENCE
{
red ColorCIExyChromaticity,
-- CIE xy chromaticity coordinate of the red primary
green ColorCIExyChromaticity,
-- CIE xy chromaticity coordinate of the green primary
blue ColorCIExyChromaticity
-- CIE xy chromaticity coordinate of the blue primary
} OPTIONAL,
...
},
...
}
-- ColorCIELab
-- Definition of a CIELab color.
ColorCIELab ::= SEQUENCE
{
l INTEGER (0..255),
-- Perceptually normalized luminance component
a INTEGER (0..255),
-- One of two perceptually normalized chroma components
b INTEGER (0..255)
-- One of two perceptually normalized chroma components
}
-- ColorCIExyChromaticity
-- Definition of a CIE normalized chromaticity value.
ColorCIExyChromaticity ::= SEQUENCE
{
x REAL (0..one),
-- CIE normalized x component
y REAL (0..one)
-- CIE normalized y component
}
-- ColorIndexTable
-- This type is used to specify collections of color
-- values. All entries are references to absolute
-- color palette data.
ColorIndexTable ::= SEQUENCE (SIZE (1..256)) OF INTEGER (0..255)
-- ColorPalette
ColorPalette ::= SEQUENCE
{
colorLookUpTable CHOICE
{
paletteRGB SEQUENCE
{
palette SEQUENCE (SIZE (2..256)) OF ColorRGB,
enhancement ColorAccuracyEnhancementRGB OPTIONAL,
...
},
paletteCIELab SEQUENCE
{
palette SEQUENCE (SIZE (2..256)) OF ColorCIELab,
enhancement ColorAccuracyEnhancementCIELab OPTIONAL,
...
},
paletteYCbCr SEQUENCE
{
palette SEQUENCE (SIZE (2..256)) OF ColorYCbCr,
enhancement ColorAccuracyEnhancementYCbCr OPTIONAL,
...
},
nonStandardPalette NonStandardParameter,
...
},
transparentEntry INTEGER (0..255) OPTIONAL,
-- Index value of transparent color
...
}
-- ColorResolutionModeSpecifier
ColorResolutionModeSpecifier ::= CHOICE
{
resolution4-4-4 NULL,
-- Indicates single component
-- 4:4:4
resolution-4-2-2 NULL,
-- 4:2:2 chrominance sub-sampling
resolution-4-2-0 NULL,
-- 4:2:0 chrominance sub-sampling
nonStandardResolutionMode NonStandardIdentifier,
...
}
-- ColorRGB
-- Definition of an RGB color.
ColorRGB ::= SEQUENCE
{
r INTEGER (0..255),
-- Red color component
g INTEGER (0..255),
-- Green color component
b INTEGER (0..255)
-- Blue color component
}
-- ColorSpaceSpecifier
ColorSpaceSpecifier ::= CHOICE
{
greyscale SEQUENCE
{
accuracyEnhancement ColorAccuracyEnhancementGreyscale OPTIONAL
},
yCbCr SEQUENCE
{
accuracyEnhancement ColorAccuracyEnhancementYCbCr OPTIONAL
},
rgb SEQUENCE
{
accuracyEnhancement ColorAccuracyEnhancementRGB OPTIONAL
},
cieLab SEQUENCE
{
accuracyEnhancement ColorAccuracyEnhancementCIELab OPTIONAL
},
nonStandardColorSpace NonStandardIdentifier,
...
}
-- ColorYCbCr
-- Definition of a YCbCr color.
ColorYCbCr ::= SEQUENCE
{
y INTEGER (0..255),
-- Luminance component
cb INTEGER (0..255),
-- Normalized blue minus luminance component
cr INTEGER (0..255)
-- Normalized red minus luminance component
}
-- ConductorPrivilege
-- List of privileges that are awarded by the SICE at the conducting
-- node to other SICEs in the session.
ConductorPrivilege ::= CHOICE
{
workspacePrivilege NULL,
-- Privilege to create, edit, or delete workspaces
annotationPrivilege NULL,
-- Privilege to create, edit, or delete annotation bitmaps
-- or drawing elements
imagePrivilege NULL,
-- Privilege to create, edit, or delete image bitmaps
pointingPrivilege NULL,
-- Privilege to create, edit, or delete pointers
remoteKeyEventPrivilege NULL,
-- Privilege to send remote keyboard events
remotePointingEventPrivilege NULL,
-- Privilege to send pointing device events
remotePrintingPrivilege NULL,
-- Privilege to request remote printing
archiveCreateWritePrivilege NULL,
-- Privilege to create or append an archive
nonStandardPrivilege NonStandardIdentifier,
-- Non-standard privilege that was successfully negotiated.
...
}
-- DataPlaneID
-- This is the identifier of a data plane within a workspace.
DataPlaneID ::= INTEGER (0..255)
-- DrawingAttribute
-- The following drawingAttributes are used to specify visual and
-- behavioral properties of a drawing.
DrawingAttribute ::= CHOICE
{
penColor WorkspaceColor,
-- Color of drawing pen
fillColor WorkspaceColor,
-- Color used to fill a closed region
penThickness PenThickness,
-- Width of pen
penNib PenNib,
-- Shape of pen nib
lineStyle LineStyle,
-- Style of line
highlight BOOLEAN,
-- Flag indicating whether the drawing element should be
-- of a solid color or a highlight (semi-transparent)
viewState ViewState,
-- Indicates the visibility state
zOrder ZOrder,
-- Used to set the graphical element to the front or back of the
-- display list within an addressable plane
nonStandardAttribute NonStandardParameter,
...
}
-- DrawingDestinationAddress
-- A DrawingDestinationAddress specifies the destination of drawing
-- elements.
DrawingDestinationAddress ::= CHOICE
{
softCopyAnnotationPlane SoftCopyDataPlaneAddress,
...,
-- Parameters added during 1st revision
nonStandardDestination NonStandardParameter
}
-- DrawingType
-- A DrawingType specifies the shape of a drawn element.
DrawingType ::= CHOICE
{
point NULL,
-- Unconnected points
openPolyLine NULL,
-- Points connected with straight lines. The last point is not
-- connected to the first.
closedPolyLine NULL,
-- Points connected with straight lines.
-- The last point is connected to the first.
rectangle NULL,
-- A rectangle defined by two corners
ellipse NULL,
-- An ellipse
nonStandardDrawingType NonStandardIdentifier,
-- Negotiated non-standard type
...
}
DSMCCTap ::= SEQUENCE
{
use INTEGER (0..65535),
-- the use for the Tap
id INTEGER (0.. 65535),
-- identifier for the Tap
associationTag INTEGER (0..65535),
-- group identifier for Tap resource descriptors
selector OCTET STRING (SIZE (1..256)) OPTIONAL,
-- upper protocol selector info
...
}
-- EditablePlaneCopyDescriptor
-- Paired list of handles for source objects and their copies.
EditablePlaneCopyDescriptor ::= SEQUENCE
{
objectList SEQUENCE (SIZE (1..65536)) OF SEQUENCE
{
sourceObjectHandle Handle,
destinationObjectHandle Handle
-- This handle is used to reference the new copy of the
-- source object in the future.
},
destinationOffset PointDiff16 OPTIONAL,
-- This parameter defines an offset to be added to the
-- coordinates of all of the copied objects. If not present,
-- zero offset is assumed.
planeClearFlag BOOLEAN,
-- When FALSE, the destination objects are appended to
-- the existing set of objects in the destination plane. When
-- TRUE, all existing objects in the destination plane are
-- deleted prior to the copy operation.
...
}
-- Handle
-- Unique identifier that is used to address objects to allow edit
-- and/or delete operations. These are obtained from GCC via the
-- GCC-Registry-Allocate-Handle request/confirm primitives.
Handle ::= INTEGER (0..4294967295)
-- KeyCode
-- Character code that is contained in a RemoteKeyboardEventPDU.
-- This is either a two-octet value that uses the UNICODE character
-- representation or special key specifier.
KeyCode ::= CHOICE
{
character BMPString (SIZE (1)),
-- UNICODE character
fkey INTEGER (1..32),
-- Function key
-- Edit and navigation keys
upArrow NULL,
downArrow NULL,
leftArrow NULL,
rightArrow NULL,
pageUp NULL,
pageDown NULL,
home NULL,
end NULL,
insert NULL,
delete NULL,
nonStandardKey NonStandardIdentifier,
-- Non-standard key code
...
} --#nocode--
-- KeyModifier
-- Collection of keyboard modifiers.
KeyModifier ::= CHOICE
{
leftAlt NULL,
-- Indicates the left ALT modifier key is pressed
rightAlt NULL,
-- Indicates the right ALT modifier key is pressed
leftShift NULL,
-- Indicates the left SHIFT modifier key is pressed
rightShift NULL,
-- Indicates the right SHIFT modifier key is pressed
leftControl NULL,
-- Indicates the left CONTROL modifier key is pressed
rightControl NULL,
-- Indicates the right CONTROL modifier key is pressed
leftSpecial NULL,
-- Indicates the left SPECIAL modifier key is pressed
rightSpecial NULL,
-- Indicates the right SPECIAL modifier key is pressed
numberPad NULL,
-- Indicates the associated keystroke is actuated by the
-- numeric keypad
scrollLock NULL,
-- Indicates that the scroll lock is active
nonStandardModifier NonStandardIdentifier,
-- Non-standard key modifier.
...
}
-- KeyPressState
-- Set of events for a key, used as part of
-- a RemoteKeyboardEventPDU
KeyPressState ::= CHOICE
{
none NULL,
-- No key event is signaled. This is used when only keyboard
-- modifier keys are changing state.
keyPress NULL,
-- A key press event has occurred. Note that multiple keyPress
-- events may occur as a result of a keyDown event and keyboard
-- auto-repeat.
keyDown NULL,
-- A key down transition has occurred. Note that this implies a
-- keyUp for an unmatched previously received keyDown.
keyUp NULL,
-- A key up transition has occurred.
nonStandardKeyPressState NonStandardIdentifier,
-- Non-standard key press state.
...
} --#nocode--
-- LineStyle
-- The LineStyle attribute is used during a line draw procedure. It
-- specifies the type of line drawn.
LineStyle ::= CHOICE
{
solid NULL,
-- All pixels between endpoints are to be drawn.
dashed NULL,
-- A dashed pattern is to be applied.
dotted NULL,
-- A dotted pattern is to be applied.
dash-dot NULL,
-- A dash-dot pattern is to be applied.
dash-dot-dot NULL,
-- A dash-dot-dot pattern is to be applied.
two-tone NULL,
-- Line color is to be applied to 50% of the line width with a
-- complimentary color applied to either side. The width of
-- either side region is to be 25% of the line width.
nonStandardStyle NonStandardIdentifier,
...
}
-- MCSUserID
-- This type is used to specify MCS User IDs.
MCSUserID ::= INTEGER (1001..65535)
-- H221NonStandardIdentifier
-- Used to specify non-standard objects using H.221 numbering.
-- The first four octets shall designate country code and
-- manufacturer code, assigned as specified in
-- Annex A/H.221, for NS-cap and NS-comm.
H221NonStandardIdentifier ::= OCTET STRING (SIZE (4..255))
-- NonStandardIdentifier
-- Unique identifier used to specify non-standard capabilities and
-- parameters either as an ASN.1 OBJECT IDENTIFIER or as an H.221
-- non-standard object.
NonStandardIdentifier ::= CHOICE
{
object OBJECT IDENTIFIER,
h221nonStandard H221NonStandardIdentifier
}
-- NonStandardParameter
-- Used to specify non-standard parameters. This includes a
-- data field which may be used to fill in parameter values
-- of the type indicated by the NonStandardIdentifier.
NonStandardParameter ::= SEQUENCE
{
nonStandardIdentifier NonStandardIdentifier,
data OCTET STRING
}
-- one
-- This type provides a real value = 1 for use in this Recommendation.
one REAL ::= {mantissa 1, base 2, exponent 0}
-- PenNib
-- This type specifies the shape of the nib of the pen that is
-- used to draw graphical elements.
PenNib ::= CHOICE
{
circular NULL,
-- A circle is used for the nib shape.
square NULL,
-- A square is used for the nib shape.
nonStandardNib NonStandardIdentifier,
-- A non-standard pen nib
...
}
-- PenThickness
-- This type specifies the thickness of the pen that is used to
-- draw graphical elements.
PenThickness ::= INTEGER (1..255)
-- PermanentPlaneCopyDescriptor
-- Describes source and destination regions within the corresponding
-- planes to be copied from and to. This is only to be used when the
-- source and destination planes are permanent.
PermanentPlaneCopyDescriptor ::= SEQUENCE
{
sourceRegion WorkspaceRegion,
-- Source rectangle to be copied.
destinationRegion WorkspaceRegion,
-- Destination rectangle to be copied.
-- May be restricted by caps to be the same size as
-- the source region.
...
}
-- PixelAspectRatio
-- This type specifies that horizontal to vertical ratio of
-- the size of a pixel.
PixelAspectRatio ::= CHOICE
{
square NULL,
-- pixel aspect ratio is 1:1
cif NULL,
-- pixel aspect ratio is 12:11 (hor:ver)
fax1 NULL,
-- 385:800 (hor:ver)
-- 8 lines/mm horizontally,
-- 3.85 lines/mm vertically
fax2 NULL,
-- 770:800 (hor:ver)
-- 8 lines/mm horizontally,
-- 7.7 lines/mm vertically
general SEQUENCE
-- The following two integers specify a rational number that
-- is equivalent to a pixels width divided by a pixels height.
{
numerator INTEGER (1..65535),
denominator INTEGER (1..65535)
},
nonStandardAspectRatio NonStandardIdentifier,
...
}
-- PlaneAttribute
-- Plane attributes are editable characteristics of workspace planes.
PlaneAttribute ::= CHOICE
{
protection PlaneProtection,
-- Access restrictions for a plane
nonStandardAttribute NonStandardParameter,
-- Non-standard attribute
...
}
-- PlaneProtection
-- This enumeration identifies the possible access restrictions
-- that can be imposed on a workspace plane.
PlaneProtection ::= SEQUENCE
{
protectedplane BOOLEAN,
-- Only the SICEs granted access via the
-- protectedPlaneAccessList can submit data to this plane.
...
}
-- PlaneUsage
-- This type specifies the usage of a single plane in a workspace.
PlaneUsage ::= CHOICE
{
annotation NULL,
-- The plane is designated to contain annotation data.
image NULL,
-- The plane is designated to contain image data.
nonStandardPlaneUsage NonStandardIdentifier,
-- The plane is designated to contain non-standard plane data.
...
}
-- PointList
-- A list of points to define a drawing object using one of
-- three possible encodings depending on how far any point
-- in the list strays from the anchor point.
PointList ::= CHOICE
{
pointsDiff4 SEQUENCE (SIZE (0..255)) OF PointDiff4,
pointsDiff8 SEQUENCE (SIZE (0..255)) OF PointDiff8,
pointsDiff16 SEQUENCE (SIZE (0..255)) OF PointDiff16
}
-- PointListEdits
-- A list of points to edit a drawing object using one of
-- three possible encodings depending on how far any point
-- in the list strays from the anchor point.
PointListEdits ::= SEQUENCE SIZE (1..255) --#array-- OF SEQUENCE
{
initialIndex INTEGER (0..65534),
-- Index of the first (or only) point to edit
initialPointEdit PointDiff16,
-- Position of the point specified relative to the anchor point
subsequentPointEdits PointList OPTIONAL,
-- Points specified relative to the previous point in this list
-- (the first one specified relative to the initialPointEdit).
-- When this list is used, successive points are assumed to
-- have indices sequentially following the initialPointIndex.
...
}
-- PointDiff4
-- A point specified differentially relative to an anchor point
-- with a range from -8 to +7.
PointDiff4 ::= SEQUENCE
{
xCoordinate INTEGER (-8..7),
-- X component of a Cartesian address
yCoordinate INTEGER (-8..7)
-- Y component of a Cartesian address
}
-- PointDiff8
-- A point specified differentially relative to an anchor point
-- with a range from -128 to +127.
PointDiff8 ::= SEQUENCE
{
xCoordinate INTEGER (-128..127),
-- X component of a Cartesian address
yCoordinate INTEGER (-128..127)
-- Y component of a Cartesian address
}
-- PointDiff16
-- A point specified differentially relative to an anchor point
-- with a range from -32768 to +32767.
PointDiff16 ::= SEQUENCE
{
xCoordinate INTEGER (-32768..32767),
-- X component of a Cartesian address
yCoordinate INTEGER (-32768..32767)
-- Y component of a Cartesian address
}
-- RemoteEventDestinationAddress
-- A RemoteEventDestinationAddress specifies the destination of
-- a remote event.
RemoteEventDestinationAddress ::= CHOICE
{
softCopyWorkspace Handle,
...,
-- Parameters added during 1st revision
nonStandardDestination NonStandardParameter
}
-- RemoteEventPermission
-- Choice of remote events that can be issued to a workspace.
RemoteEventPermission ::= CHOICE
{
keyboardEvent NULL,
pointingDeviceEvent NULL,
nonStandardEvent NonStandardIdentifier,
...
}
-- RotationSpecifier
-- Specifies a rotation angle and an axis of revolution
RotationSpecifier ::= SEQUENCE
{
rotationAngle INTEGER (0..21599),
-- 0 degrees to 359 degrees 59 minutes in units of minutes
-- of arc.
rotationAxis PointDiff16
-- Workspace location relative to an objects anchor point.
}
-- SoftCopyDataPlaneAddress
-- Address of a workspace data plane.
SoftCopyDataPlaneAddress ::= SEQUENCE
{
workspaceHandle Handle,
plane DataPlaneID
}
-- SoftCopyPointerPlaneAddress
-- Address of a workspace pointer plane.
SoftCopyPointerPlaneAddress ::= SEQUENCE
{
workspaceHandle Handle
}
-- SourceDisplayIndicator
-- Indicator of the size and location of a workspace view within
-- the display device of the sourcing terminal.
SourceDisplayIndicator ::= SEQUENCE
{
displayAspectRatio REAL (0..MAX),
-- Aspect ratio of the display; horizontal over vertical size.
-- Positive real values.
horizontalSizeRatio REAL (0..MAX),
-- Ratio of workspace view horizontal dimension to display
-- horizontal dimension.
-- Positive real values.
horizontalPosition REAL,
-- Horizontal offset of upper left corner of the workspace view
-- from the upper left corner of the display normalized to the
-- display width (where the display spans the horizontal
-- range 0.0 to 1.0).
verticalPosition REAL,
-- Vertical offset of upper left corner of the workspace view
-- from the upper left corner of the display normalized to
-- the display height (where the display spans the vertical
-- range 0.0 to 1.0).
...
}
-- TokenID
-- MCS Token ID.
TokenID ::= INTEGER (1..65535)
-- TransparencyMask
-- A binary bitmap that indicates which pixels in a bitmap shall be
-- treated as transparent.
TransparencyMask ::= SEQUENCE
{
bitMask CHOICE
{
uncompressed OCTET STRING,
-- Binary bitmap where a value of 1 indicates that the
-- corresponding pixel in the reference bitmap shall be
-- displayed. A value of 0 indicates that that pixel shall be
-- treated as transparent.
jbigCompressed OCTET STRING,
-- Same as above but additionally compressed using JBIG.
nonStandardFormat NonStandardParameter,
...
},
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
...
}
-- VideoWindowDestinationAddress
-- A VideoWindowDestinationAddress specifies the destination of video windows.
VideoWindowDestinationAddress ::= CHOICE
{
softCopyImagePlane SoftCopyDataPlaneAddress,
nonStandardDestination NonStandardParameter,
...
} --#nocode--
-- VideoSourceIdentifier
-- Used to reference an out-of-band video source.
VideoSourceIdentifier ::= CHOICE
{
default NULL,
h243SourceIdentifier OCTET STRING (SIZE (2)),
-- A two-octet field. The first octet should contain
-- the H.243 MCU ID (M), and the second octet should
-- contain the H.243 Terminal ID (T).
h245SourceIdentifier INTEGER (0..65535),
dSMCCConnBinder SEQUENCE OF DSMCCTap,
videoIdentifier OCTET STRING (SIZE (1..256)),
nonStandardSourceIdentifier NonStandardParameter,
...
} --#nocode--
-- VideoWindowAttribute
-- Attributes of video windows.
VideoWindowAttribute ::= CHOICE
{
transparencyMask TransparencyMask,
-- Bit mask specifying which pixels should be treated
-- as transparent within the video window.
nonStandardAttribute NonStandardParameter,
...
} --#nocode--
-- VideoWindowCreatePDU
-- This PDU allows video windows encapculating out of band video
-- streams to be created.
VideoWindowCreatePDU ::= SEQUENCE
{
videoWindowHandle Handle,
-- Handle to be used to reference this object in the future
destinationAddress VideoWindowDestinationAddress,
-- Destination address of the video window
videoSourceIdentifier VideoSourceIdentifier,
-- Identifies the video source to be placed in the window
attributes SET OF VideoWindowAttribute OPTIONAL,
-- List of editable attributes of the video window
anchorPoint WorkspacePoint OPTIONAL,
-- Point of origin of the video window with respect to the
-- destination workspace. Only needed for softcopy
-- bitmaps. Default is (0,0).
videoWindowSize BitmapSize,
-- Width and height of the total video window represented
-- in the bitstream.
videoWindowRegionOfInterest BitmapRegion OPTIONAL,
-- Region of interest within the video stream to be applied
-- to the workspace Default is full video area.
pixelAspectRatio PixelAspectRatio,
-- Pixel aspect ratio of the video stream
scaling PointDiff16 OPTIONAL,
-- Offset in workspace coordinates of the lower right hand
-- corner of the video window relative to the anchor point
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard
-- capabilities are present in the negotiated capability set.
...
} --#nocode--
-- VideoWindowDeletePDU
-- This PDU deletes video windows.
VideoWindowDeletePDU ::= SEQUENCE
{
videoWindowHandle Handle,
-- Handle referencing the video window
-- to be deleted.
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
} --#nocode--
-- VideoWindowEditPDU
-- A VideoWindowEditPDU is used to alter one or more of
-- a video window elements attributes or parameters.
VideoWindowEditPDU ::= SEQUENCE
{
videoWindowHandle Handle,
-- Identifier of item to be edited
videoSourceIdentifierEdit VideoSourceIdentifier OPTIONAL,
-- Identifies the video source to be placed in the window
attributeEdits SET OF VideoWindowAttribute OPTIONAL,
-- List of attribute changes
anchorPointEdit WorkspacePoint OPTIONAL,
-- Point of origin of the drawing element
videoWindowSize BitmapSize,
-- Change to the width and height of the total video window
-- represented in the bitstream
videoWindowRegionOfInterestEdit BitmapRegion OPTIONAL,
-- Change to the region of interest within the video stream
-- to be applied to the workspace
pixelAspectRatioEdit PixelAspectRatio OPTIONAL,
-- Change to the pixel aspect ratio of the video stream
scalingEdit PointDiff16 OPTIONAL,
-- Change to the offset in workspace coordinates of the
-- lower right hand corner of the video window relative to
-- the anchor point
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
} --#nocode--
-- ViewState
-- Controls the visibility state of an object.
ViewState ::= CHOICE
{
unselected NULL,
selected NULL,
hidden NULL,
nonStandardViewState NonStandardIdentifier,
...
}
-- WorkspaceAttribute
-- Workspace attributes are editable characteristics of workspace.
WorkspaceAttribute ::= CHOICE
{
backgroundColor WorkspaceColor,
-- This specifies the background color of the workspace.
preserve BOOLEAN,
-- If TRUE, the associated workspace resource should not
-- be placed on the viewed workspace queue once it has been
-- automatically removed from the Focus state.
nonStandardAttribute NonStandardParameter,
...
}
-- WorkspaceColor
-- The following defines a generic type for a color, used where a
-- color is required for drawing or workspace backgrounds.
WorkspaceColor ::= CHOICE
{
workspacePaletteIndex INTEGER (0..255),
rgbTrueColor ColorRGB,
transparent NULL,
...
}
-- WorkspaceCoordinate
-- A WorkspaceCoordinate is the value of a single axis of
-- a point in a workspace.
WorkspaceCoordinate ::= INTEGER (-21845..43690)
-- WorkspaceDeleteReason
-- This value represents the reason codes for the
-- WorkspaceDeletePDU.
WorkspaceDeleteReason ::= CHOICE
{
userInitiated NULL,
-- Workspace deletion initiated by user
insufficientStorage NULL,
-- Workspace deleted due to insufficient storage capacity.
nonStandardReason NonStandardParameter,
...
}
-- WorkspaceIdentifier
WorkspaceIdentifier ::= CHOICE
{
activeWorkspace Handle,
-- Handle identifying the active workspace
archiveWorkspace SEQUENCE
{
archiveHandle Handle,
-- Handle identifying the archive in which the archived
-- workspace is contained
entryName ArchiveEntryName,
-- Name of the archived workspace
modificationTime GeneralizedTime OPTIONAL
-- If the workspace identifier is being used for an operation
-- in which the workspace is to be modified, this parameter
-- shall indicate the time of modification.
-- In this case, the archive header is modified to reflect the
-- most recent modification time. Otherwise, this parameter
-- shall not be included.
},
...
}
-- WorkspacePoint
-- A WorkspacePoint is a two-dimensional address of a location in a
-- workspace plane including points in the invisible border areas.
WorkspacePoint ::= SEQUENCE
{
xCoordinate WorkspaceCoordinate,
-- X component of a Cartesian address
yCoordinate WorkspaceCoordinate
-- Y component of a Cartesian address
}
-- WorkspaceRegion
-- This type can be used to describe both the size and
-- position of a rectangular region within a workspace.
WorkspaceRegion ::= SEQUENCE
{
upperLeft WorkspacePoint,
lowerRight WorkspacePoint
}
-- WorkspaceSize
-- The size of a workspace in pixels.
WorkspaceSize ::= SEQUENCE
{
width INTEGER (1..21845),
-- The number of pixels horizontally
height INTEGER (1..21845)
-- The number of pixels vertically
}
-- WorkspaceViewAttribute
-- View attributes are editable characteristics of workspace views.
WorkspaceViewAttribute ::= CHOICE
{
viewRegion CHOICE
{
fullWorkspace NULL,
-- View the entire workspace
partialWorkspace WorkspaceRegion
-- Rectangle defining the region of the workspace to view.
-- The view shall not extend beyond the boundaries of
-- the workspace.
},
viewState WorkspaceViewState,
-- Visibility state of the view
updatesEnabled BOOLEAN,
-- If this attribute is set to FALSE (the default is TRUE), it
-- is an indication that subsequent updates to the workspace
-- corresponding to this view not be shown until this attribute
-- is set to TRUE.
sourceDisplayIndicator SourceDisplayIndicator,
-- Indicates the characteristics of the view within the source
-- display device
nonStandardAttribute NonStandardParameter,
...
}
-- WorkspaceViewState
-- A views state indicates how the local terminal should
-- display the view.
WorkspaceViewState ::= CHOICE
{
hidden NULL,
-- This workspace should not be shown to the user.
background NULL,
-- The display of this workspace is optional.
foreground NULL,
-- The display of this workspace is desirable.
focus NULL,
-- The display of this workspace is mandatory. Only one
-- workspace may be set to this state.
nonStandardState NonStandardIdentifier,
...
}
-- ZOrder
-- This enumerated type is used to specify a transition to front
-- or back of an object within an addressable plane.
ZOrder ::= ENUMERATED
{
front (0),
-- Move object to the front of the plane display list
back (1),
-- Move object to the back of the plane display list
...
}
-- Begin SIPDU Definitions
-- ArchiveAcknowledgePDU
-- The ArchiveAcknowledgePDU is used to acknowledge that an archive
-- has been successfully opened.
ArchiveAcknowledgePDU ::= SEQUENCE
{
archiveHandle Handle,
-- Unique handle that references the archive
result ArchiveOpenResult,
-- Indicates whether or not the archive was opened successfully
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
} --#nocode--
-- ArchiveClosePDU
-- The ArchiveClosePDU is used to close an archive that was
-- previously opened during an SI session.
ArchiveClosePDU ::= SEQUENCE
{
archiveHandle Handle,
-- Unique handle that references the archive
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
} --#nocode--
-- ArchiveErrorPDU
-- The ArchiveErrorPDU is used by a terminal receiving an
-- archive PDU to signal error conditions to the sender.
ArchiveErrorPDU ::= SEQUENCE
{
archiveHandle Handle,
-- Unique handle that references the archive
entryName ArchiveEntryName OPTIONAL,
-- Specifies the archive entry associated with the error if
-- applicable
errorCode ArchiveError,
-- Specifies the cause of the error at the remote terminal
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
} --#nocode--
-- ArchiveOpenPDU
-- The ArchiveOpenPDU is used to open an archive at a
-- remote terminal that supports this capability.
ArchiveOpenPDU ::= SEQUENCE
{
archiveHandle Handle,
-- Unique handle that is used to reference this archive during
-- the session
mode ArchiveMode,
-- Indicates the access restrictions placed on the archive
header ArchiveHeader,
-- Specifies information used to identify the archive. If the archive
-- is being created, this is the information that is used to identify
-- the archive in the future.
maxEntries INTEGER (1..65535) OPTIONAL,
-- This parameter allows remote terminals to estimate the local
-- resource usage for the specified archive so they can signal an
-- error early in the archiving process. It is only to be specified if
-- the archive open mode is set to "create".
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities are
-- present in the negotiated capability set.
...
} --#nocode--
-- BitmapAbortPDU
-- This PDU is used by both the transmitting SICE to signal that a
-- bitmap exchange is being aborted and by an SICE requesting that
-- a bitmap exchange in progress be aborted.
BitmapAbortPDU ::= SEQUENCE
{
bitmapHandle Handle,
-- Handle referring to the bitmap being created
userID MCSUserID OPTIONAL,
-- Optionally provided by the transmitter if identification of
-- the source of the abort is desired
reason BitmapAbortReason OPTIONAL,
message BMPString (SIZE (1..256)) OPTIONAL,
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- BitmapCheckpointPDU
-- This PDU is used by a terminal that is transmitting a bitmap
-- when it wants to notify receiving terminals that they should
-- display previously received data.
BitmapCheckpointPDU ::= SEQUENCE
{
bitmapHandle Handle,
-- Handle used to reference this bitmap
passedCheckpoints SET (SIZE (1..100)) OF TokenID,
-- List of checkpoints that have been uninhibited by all nodes
percentComplete INTEGER (1..100),
-- Cumulative portion of the bitmap completed as a result of
-- all passed checkpoints so far
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- BitmapCreatePDU
-- This PDU is used to initiate a bitmap transmission.
BitmapCreatePDU ::= SEQUENCE
{
bitmapHandle Handle,
-- Handle to be used to reference this object in the future
destinationAddress BitmapDestinationAddress,
-- Destination address of the bitmap
attributes SET OF BitmapAttribute OPTIONAL,
-- List of editable attributes of the bitmap
anchorPoint WorkspacePoint OPTIONAL,
-- Point of origin of the bitmap with respect to the
-- destination workspace. Only needed for softcopy bitmaps.
-- Default is (0,0).
bitmapSize BitmapSize,
-- Width and height of the total bitmap represented in the
-- bitstream. For a multi-component bitmap, this is the
-- size of the largest component.
bitmapRegionOfInterest BitmapRegion OPTIONAL,
-- Region of interest within the bitmap to be applied to the
-- workspace
-- Default is full bitmap.
pixelAspectRatio PixelAspectRatio,
-- Pixel aspect ratio of the bitmap
scaling PointDiff16 OPTIONAL,
-- Offset in workspace coordinates of the lower right hand
-- corner of the bitmap relative to the anchor point.
-- Default is no scaling.
-- Only needed for softcopy bitmaps.
checkpoints SEQUENCE (SIZE (1..100)) OF TokenID OPTIONAL,
-- Tokens to be used for checkpointing the bitmap create
-- exchange
bitmapFormatHeader CHOICE
-- The following headers provide image bitstream parameters
-- that are outside the scope of the corresponding coding
-- standard but are necessary for image decompression.
-- NOTE: Some bitmap formats are disallowed depending
-- on the value of the destinationAddress parameter.
{
bitmapHeaderUncompressed BitmapHeaderUncompressed,
-- Parameters for the uncompressed pixel representation
bitmapHeaderT4 BitmapHeaderT4,
-- Parameters for T4 (G3) encoded bitstreams outside
-- the T.4 standards scope
bitmapHeaderT6 BitmapHeaderT6,
-- Parameters for T6 (G4) encoded bitstreams outside
-- the T.6 standards scope
bitmapHeaderT81 BitmapHeaderT81,
-- Parameters for T.81 (JPEG) encoded bitstreams
-- outside the T.81 standards scope
bitmapHeaderT82 BitmapHeaderT82,
-- Parameters for T.82 (JBIG) encoded bitstreams
-- outside the T.82 standards scope
bitmapHeaderNonStandard NonStandardParameter,
...
},
bitmapData BitmapData OPTIONAL,
-- Compression format specific bitmap data padded to
-- be byte-aligned.
moreToFollow BOOLEAN,
-- Indicates whether or not this is the last block of data for
-- the bitmap
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- BitmapCreateContinuePDU
-- This PDU is used by the transmitting SICE to continue
-- a bitmap transmission begun by a BitmapCreatePDU
BitmapCreateContinuePDU ::= SEQUENCE
{
bitmapHandle Handle,
-- Handle referring to the bitmap being created
bitmapData BitmapData,
-- Bitmap data
moreToFollow BOOLEAN,
-- Indicates whether or not this is the last block of data for
-- the bitmap
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- BitmapDeletePDU
-- This PDU is used to delete bitmaps.
BitmapDeletePDU ::= SEQUENCE
{
bitmapHandle Handle,
-- Handle used to reference this bitmap
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- BitmapEditPDU
-- This PDU is used to change bitmap attributes.
BitmapEditPDU ::= SEQUENCE
{
bitmapHandle Handle,
-- Handle used to reference this bitmap
attributeEdits SET OF BitmapAttribute OPTIONAL,
-- List of attributes to be edited
anchorPointEdit WorkspacePoint OPTIONAL,
-- Point of origin of the bitmap with respect to the destination
-- workspace
bitmapRegionOfInterestEdit BitmapRegion OPTIONAL,
-- Region of interest within the bitmap to be applied to the
-- workspace
scalingEdit PointDiff16 OPTIONAL,
-- Offset in workspace coordinates of the lower right hand
-- corner of the bitmap relative to the anchor point
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- ConductorPrivilegeGrantPDU
-- This PDU is used by the conductor to grant or revoke privileges
-- when the session is in conducted mode.
ConductorPrivilegeGrantPDU ::= SEQUENCE
{
destinationUserID MCSUserID,
-- MCS User ID of the destination node
privilegeList SET OF ConductorPrivilege,
-- A particular privilege shall appear in this list no more
-- than once.
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- ConductorPrivilegeRequestPDU
-- This PDU is used to request privileges from the conductor
-- when the session is in conducted mode.
ConductorPrivilegeRequestPDU ::= SEQUENCE
{
privilegeList SET OF ConductorPrivilege,
-- A particular privilege shall appear in this list no more
-- than once.
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- DrawingCreatePDU
-- A drawingCreate PDU is used to deposit one or more
-- drawing elements to a workspace plane.
DrawingCreatePDU ::= SEQUENCE
{
drawingHandle Handle OPTIONAL,
-- Handle to be used to reference this drawing object in
-- future exchanges. Note that editing and deleting objects is
-- only valid if the target plane is of type "editable".
destinationAddress DrawingDestinationAddress,
-- Destination of drawing
drawingType DrawingType,
-- Which basic drawing shape this element represents
attributes SET OF DrawingAttribute OPTIONAL,
-- Attributes of the drawing object.
-- NOTE: All attributes have default values that are assumed
-- if the attribute is not specified.
anchorPoint WorkspacePoint,
-- Point of origin of the drawing element.
-- This forms the first of the control points and is the point
-- from which all other control points are defined relative to.
rotation RotationSpecifier OPTIONAL,
-- Specifies a rotation angle and point of revolution for
-- the drawing element
sampleRate INTEGER (1..255) OPTIONAL,
-- For applicable types, this indicates the rate at which
-- points were acquired by the transmitting terminal
-- (in samples per second) so they can be replayed at
-- a similar rate if desired
pointList PointList,
-- List of control points that define the drawing shape.
-- The interpretation of the control point list is dependent on
-- the value of the "type" parameter.
-- Note that the control points in the list are differentially
-- encoded from the previous.
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- DrawingDeletePDU
-- A DrawingDeletePDU is used to delete one
-- graphical element from a workspace plane.
DrawingDeletePDU ::= SEQUENCE
{
drawingHandle Handle,
-- Drawing object to delete
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- DrawingEditPDU
-- A DrawingEditPDU is used to alter one or more of
-- a drawing elements attributes or parameters.
DrawingEditPDU ::= SEQUENCE
{
drawingHandle Handle,
-- Identifier of item to be edited
attributeEdits SET OF DrawingAttribute OPTIONAL,
-- List of attribute changes
anchorPointEdit WorkspacePoint OPTIONAL,
-- Point of origin of the drawing element
rotationEdit RotationSpecifier OPTIONAL,
-- Specifies a rotation angle and point of revolution for the
-- drawing element
pointListEdits PointListEdits OPTIONAL,
-- List of control point changes.
-- Note that the index refers to
-- the point list not including the anchor point.
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- FontPDU
FontPDU ::= SEQUENCE
{
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard
-- capabilities are present in the negotiated capability set.
...
}
-- RemoteEventPermissionGrantPDU
-- This PDU is used to grant permission to issue remote
-- events.
RemoteEventPermissionGrantPDU ::= SEQUENCE
{
destinationAddress RemoteEventDestinationAddress,
-- Address to which remote event permission is being granted
destinationUserID MCSUserID,
-- MCS User ID of the destination node
remoteEventPermissionList SET OF RemoteEventPermission,
-- A particular permission shall not be included in this list more
-- than once.
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities are
-- present in the negotiated capability set.
...
}
-- RemoteEventPermissionRequestPDU
-- This PDU is used to request permission to issue remote
-- events from the workspace creator.
RemoteEventPermissionRequestPDU ::= SEQUENCE
{
destinationAddress RemoteEventDestinationAddress,
-- Address to which remote event permission is being requested
remoteEventPermissionList SET OF RemoteEventPermission,
-- A particular permission shall not be included in this list more
-- than once.
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- RemoteKeyboardEventPDU
-- This PDU signals keyboard event.
RemoteKeyboardEventPDU ::= SEQUENCE
{
destinationAddress RemoteEventDestinationAddress,
-- Destination address of remote event
keyModifierStates SET OF KeyModifier OPTIONAL,
-- Set of key modifiers. Only modifiers in this list
-- are assumed to be active.
-- A particular key modifier shall not be included
-- in this set more than once.
keyPressState KeyPressState,
-- This item specifies keyboard event that is being signaled
keyCode KeyCode,
-- Character corresponding to the pressed key or function key
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
} --#nocode--
-- RemotePointingDeviceEventPDU
-- This PDU is used to signal pointing device events.
RemotePointingDeviceEventPDU ::= SEQUENCE
{
destinationAddress RemoteEventDestinationAddress,
-- Destination address of remote event
leftButtonState ButtonEvent,
-- This specifies the left button state.
middleButtonState ButtonEvent,
-- This specifies the middle button state.
rightButtonState ButtonEvent,
-- This specifies the right button state.
initialPoint WorkspacePoint,
-- This specifies the initial pointing device position.
sampleRate INTEGER (1..255) OPTIONAL,
-- This parameter indicates the rate at which points were
-- acquired by the transmitting terminal (in samples per second)
-- so they can be replayed at a similar rate if desired.
pointList PointList OPTIONAL,
-- Additional coordinates that are each differentially encoded
-- with respect to the initialPoint parameter
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- RemotePrintPDU
-- This PDU is used to instruct a remote terminal to print
-- the specified workspace.
RemotePrintPDU ::= SEQUENCE
{
destinationAddress RemoteEventDestinationAddress,
-- Destination address of remote event
numberOfCopies INTEGER (1..65536) OPTIONAL,
-- Number of copies to be printed
portrait BOOLEAN OPTIONAL,
-- TRUE specifies a portrait paper orientation.
-- FALSE specifies a landscape paper orientation.
regionOfInterest WorkspaceRegion OPTIONAL,
-- Optionally defines rectangular region of interest
-- within the workspace to be printed.
-- If not present, it is implied that
-- the entire workspace is to be printed.
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- SINonStandardPDU
-- This PDU allows any non-standard information to be transmitted.
SINonStandardPDU ::= SEQUENCE
{
nonStandardTransaction NonStandardParameter,
...
}
-- TextCreatePDU
TextCreatePDU ::= SEQUENCE
{
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
} --#nocode--
-- TextDeletePDU
TextDeletePDU ::= SEQUENCE
{
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
} --#nocode--
-- TextEditPDU
TextEditPDU ::= SEQUENCE
{
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
} --#nocode--
-- WorkspaceCreatePDU
-- This PDU causes a workspace to be created and its
-- attributes to be set.
WorkspaceCreatePDU ::= SEQUENCE
{
workspaceIdentifier WorkspaceIdentifier,
-- Identifier that will be used to reference this workspace
-- in the future.
appRosterInstance INTEGER (0..65535),
-- Indicates which application roster instance (returned in the
-- GCC-Application-Roster-Report indication) was valid when
-- this PDU was issued. This is used to eliminate race conditions
-- that can occur when terminals enter a session while a workspace
-- is being created.
synchronized BOOLEAN,
-- TRUE specifies that the workspace contents stacking
-- order must be consistent everywhere.
-- In many cases, this implies the use of
-- MCS-UNIFORM-SEND-DATA for SIPDU submission.
-- FALSE specifies that the workspace contents do not have
-- to be consistent in stacking order; therefore the use of
-- MCS-SEND-DATA is acceptable for all content
-- submitting transactions.
acceptKeyboardEvents BOOLEAN,
-- If TRUE this workspace can accept remote
-- keyboard events.
acceptPointingDeviceEvents BOOLEAN,
-- If TRUE this workspace can accept remote pointer
-- device events.
protectedPlaneAccessList SET (SIZE (1..65536)) OF MCSUserID OPTIONAL,
-- The ability to modify any protected plane in this workspace is
-- restricted only to SICEs on this list. The creator of the workspace
-- is NOT automatically granted access to these planes unless
-- explicitly on this list.
workspaceSize WorkspaceSize,
-- This value specifies the width and height of the new
-- workspace in pixels.
workspaceAttributes SET OF WorkspaceAttribute OPTIONAL,
-- Editable attributes of the workspace
planeParameters SEQUENCE (SIZE (1..256)) OF SEQUENCE
-- This sequence contains plane parameters.
-- Its length is the number of planes in the workspace.
{
editable BOOLEAN,
-- This item specifies whether objects created on this plane
-- are editable
-- If not editable, each plane is treated as a bitmap image.
usage SET (SIZE (1..MAX)) OF PlaneUsage,
-- This item specifies restrictions on the usage of this plane
-- (image data or annotation data).
-- At least one use shall be included.
-- A particular usage designator shall be listed
-- no more than once.
planeAttributes SET OF PlaneAttribute OPTIONAL,
-- List of attributes
-- A particular attribute shall be listed no more than once.
...
},
viewParameters SET (SIZE (1..256)) OF SEQUENCE
-- Each entry in this list (if any) defines a view to be created in
-- association with this workspace.
{
viewHandle Handle,
-- Identifier of the view to be created
viewAttributes SET OF WorkspaceViewAttribute OPTIONAL,
-- Editable attributes of the view
...
} OPTIONAL,
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- WorkspaceCreateAcknowledgePDU
-- This PDU acknowledges the reception of a WorkspaceCreatePDU in
-- the case of unsynchronized workspace.
WorkspaceCreateAcknowledgePDU ::= SEQUENCE
{
workspaceIdentifier WorkspaceIdentifier,
-- Workspace being acknowledged.
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- WorkspaceDeletePDU
-- This PDU causes a workspace to be destroyed.
WorkspaceDeletePDU ::= SEQUENCE
{
workspaceIdentifier WorkspaceIdentifier,
-- Workspace to be deleted
reason WorkspaceDeleteReason,
-- Reason for deletion of the workspace
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- WorkspaceEditPDU
-- This PDU allows workspace attributes to be edited.
WorkspaceEditPDU ::= SEQUENCE
{
workspaceIdentifier WorkspaceIdentifier,
-- Workspace to be edited
attributeEdits SET OF WorkspaceAttribute OPTIONAL,
-- List of attribute changes
planeEdits SET (SIZE (1..256)) OF SEQUENCE
{
plane DataPlaneID,
-- Plane whose attributes are to be edited
planeAttributes SET OF PlaneAttribute,
-- List of attributes to change
...
} OPTIONAL,
viewEdits SET (SIZE (1..256)) OF SEQUENCE
{
viewHandle Handle,
-- Identifier of the view to be edited
action CHOICE
{
createNewView SET OF WorkspaceViewAttribute,
-- Editable attributes of the view
editView SET OF WorkspaceViewAttribute,
-- List of attributes to change
deleteView NULL,
nonStandardAction NonStandardParameter,
...
},
...
} OPTIONAL,
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard
-- capabilities are present in the negotiated capability set.
...
}
-- WorkspacePlaneCopyPDU
-- This PDU causes a portion of a plane to be copied
-- to another plane (either intra- or inter-workspace).
-- The source and destinations must either both be
-- permanent or both be editable, and they must have the same
-- usage designator; otherwise copy for that plane will
-- not take place.
-- If the planes are editable, objects with any of their control
-- points falling totally within the source rectangle are copied.
-- If the Scaling capability has been negotiated in the case of a
-- softcopy workspace then it is not necessary for the source and
-- destination rectangles to be the same size.
WorkspacePlaneCopyPDU ::= SEQUENCE
{
sourceWorkspaceIdentifier WorkspaceIdentifier,
-- Workspace to be copied
sourcePlane DataPlaneID,
-- Source plane identifier
destinationWorkspaceIdentifier WorkspaceIdentifier,
-- Destination workspace identifier.
-- May be the same as the source workspace
destinationPlane DataPlaneID,
-- Destination plane identifier.
-- May be the same as the source plane
copyDescriptor CHOICE
{
permanentPlaneCopyDescriptor PermanentPlaneCopyDescriptor,
editablePlaneCopyDescriptor EditablePlaneCopyDescriptor,
...
},
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- WorkspaceReadyPDU
-- This PDU signals that a workspace create is complete (for
-- unsynchronized workspaces).
WorkspaceReadyPDU ::= SEQUENCE
{
workspaceIdentifier WorkspaceIdentifier,
-- Workspace being enabled
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- WorkspaceRefreshStatusPDU
-- This PDU is used by an SICE to announce or remit its status as
-- the session refresh SICE for SICEs that join late.
WorkspaceRefreshStatusPDU ::= SEQUENCE
{
refreshStatus BOOLEAN,
-- TRUE indicates that the SICE sourcing this PDU is
-- functioning as the session-wide refresher.
-- FALSE indicates that the SICE sourcing this PDU has
-- ceased to function as the session-wide refresher.
nonStandardParameters SET OF NonStandardParameter OPTIONAL,
-- Allowed only if the corresponding non-standard capabilities
-- are present in the negotiated capability set.
...
}
-- SIPDU
-- The set of all SIPDUs.
SIPDU ::= CHOICE
{
archiveAcknowledgePDU ArchiveAcknowledgePDU,
archiveClosePDU ArchiveClosePDU,
archiveErrorPDU ArchiveErrorPDU,
archiveOpenPDU ArchiveOpenPDU,
bitmapAbortPDU BitmapAbortPDU,
bitmapCheckpointPDU BitmapCheckpointPDU,
bitmapCreatePDU BitmapCreatePDU,
bitmapCreateContinuePDU BitmapCreateContinuePDU,
bitmapDeletePDU BitmapDeletePDU,
bitmapEditPDU BitmapEditPDU,
conductorPrivilegeGrantPDU ConductorPrivilegeGrantPDU,
conductorPrivilegeRequestPDU ConductorPrivilegeRequestPDU,
drawingCreatePDU DrawingCreatePDU,
drawingDeletePDU DrawingDeletePDU,
drawingEditPDU DrawingEditPDU,
remoteEventPermissionGrantPDU RemoteEventPermissionGrantPDU,
remoteEventPermissionRequestPDU RemoteEventPermissionRequestPDU,
remoteKeyboardEventPDU RemoteKeyboardEventPDU,
remotePointingDeviceEventPDU RemotePointingDeviceEventPDU,
remotePrintPDU RemotePrintPDU,
siNonStandardPDU SINonStandardPDU,
workspaceCreatePDU WorkspaceCreatePDU,
workspaceCreateAcknowledgePDU WorkspaceCreateAcknowledgePDU,
workspaceDeletePDU WorkspaceDeletePDU,
workspaceEditPDU WorkspaceEditPDU,
workspacePlaneCopyPDU WorkspacePlaneCopyPDU,
workspaceReadyPDU WorkspaceReadyPDU,
workspaceRefreshStatusPDU WorkspaceRefreshStatusPDU,
...,
-- PDUs Added During 1st Revision
fontPDU FontPDU,
textCreatePDU TextCreatePDU,
textDeletePDU TextDeletePDU,
textEditPDU TextEditPDU,
videoWindowCreatePDU VideoWindowCreatePDU,
videoWindowDeleatePDU VideoWindowDeletePDU,
videoWindowEditPDU VideoWindowEditPDU
}
-- End SI Definitions
END