--#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