CONTENTS

 1     Scope
 2     References
 3     Definitions and abbreviations
        3.1     Definitions
        3.2     Abbreviations
 4     Conformance
        4.1     Implementation conformance
                  4.1.1     Conformance requirements
                  4.1.2     Conformance documentation
        4.2     Application conformance
                  4.2.1     Strictly Conforming Application
                  4.2.2     Conforming Application
        4.3     Test Methods
 5     General description
        5.1     Functional reference model of MHEG using applications
                  5.1.1     Reference model for multimedia applications
                  5.1.2     The MHEG-API
        5.2     Functional specification of the MHEG-API
                  5.2.1     MHEG usage specifications
                               5.2.1.1     Definitions
                               5.2.1.2     MHEG objects
                               5.2.1.3     Mh-objects
                               5.2.1.4     Rt-objects
                               5.2.1.5     Channels
                               5.2.1.6     Interchanged MHEG objects
                  5.2.2     Description of MHEG-related services
 6     API definition principles
        6.1     Satisfaction of technical requirements on the MHEG-API
        6.2     Use of Interface Definition Language (IDL) ISO/IEC 14750 [10]
                  6.2.1     Comprehensive introduction to IDL
                  6.2.2     The Interface Definition Language
                               6.2.2.1     Objects
                               6.2.2.2     Requests
                               6.2.2.3     Types
                               6.2.2.4     Interfaces
                               6.2.2.5     Operations
                               6.2.2.6     Attributes
                               6.2.2.7     Subtyping versus inheritance
                               6.2.2.8     Subtyping
                               6.2.2.9     Inheritance
                  6.2.3     Principles for mapping IDL interfaces to API primitives
                  6.2.4     Fulfilment of technical requirements
        6.3     Overview of the API definition and general principles
                  6.3.1     The MHEG-API Object model
 7     Definition of the MHEG-API
        7.1     Mandatory primitives
                  7.1.1     MHEGEngine object
                               7.1.1.1     initialiseEngine operation
                               7.1.1.2     shutdownEngine operation
                               7.1.1.3     IDL description
                  7.1.2      NotificationManager object
                               7.1.2.1     getReturnability operation
                               7.1.2.2     getNotification operation
                               7.1.2.3     IDL description
                  7.1.3     EntityManager object
                               7.1.3.1     getAvailableMhObjects operation
                               7.1.3.2     getAvailableRtObjects operation
                               7.1.3.3     getAvailableChannels operation
                               7.1.3.4     releaseAlias operation
                               7.1.3.5     IDL description
                  7.1.4     Entity object
                               7.1.4.1     setAlias operation
                               7.1.4.2     getAlias operation
                               7.1.4.3     IDL description
                  7.1.5     MhObject object
                               7.1.5.1     bind operation
                               7.1.5.2     unbind operation
                               7.1.5.3     prepare operation
                               7.1.5.4     destroy operation
                               7.1.5.5     getPreparationStatus operation
                               7.1.5.6     getIdentifier operation
                               7.1.5.7     kill operation
                               7.1.5.8     IDL description
                  7.1.6     MhAction object
                               7.1.6.1     delay operation
                               7.6.1.2     IDL description
                  7.1.7     MhLink object
                               7.1.7.1     abort operation
                               7.1.7.2     IDL description
                  7.1.8     MhModel object
                               7.1.8.1     IDL description
                  7.1.9     MhComponent object
                               7.1.9.1     IDL description
                 7.1.10     MhGenericContent object
                              7.1.10.1     copy operation
                              7.1.10.2     IDL description
                 7.1.11     MhContent object
                              7.1.11.1     setData operation
                              7.1.11.2     getData operation
                              7.1.11.3     IDL description
                 7.1.12     MhMultiplexedContent object
                              7.1.12.1     setMultiplex operation
                              7.1.12.2     setDemultiplex operation
                              7.1.12.3     IDL description
                 7.1.13     MhComposite object
                              7.1.13.1     IDL description
                 7.1.14     MhScript object
                              7.1.14.1     IDL description
                 7.1.15     MhContainer object
                              7.1.15.1     IDL description
                 7.1.16     MhDescriptor object
                              7.1.16.1     IDL description
                 7.1.17     RtObjectOrSocket object
                              7.1.17.1     setGlobalBehaviour operation
                              7.1.17.2     getGlobalBehaviour operation
                              7.1.17.3     run operation
                              7.1.17.4     stop operation
                              7.1.17.5     IDL description
                 7.1.18     RtObject object
                              7.1.18.1     bind operation
                              7.1.18.2     unbind operation
                              7.1.18.3     new operation
                              7.1.18.4     delete operation
                              7.1.18.5     getAvailabilityStatus operation
                              7.1.18.6     getIdentifier operation
                              7.1.18.7     kill operation
                              7.1.18.8     getRunningStatus operation
                              7.1.18.9     IDL description
                 7.1.19     Socket object
                              7.1.19.1     bind operation
                              7.1.19.2     unbind operation
                              7.1.19.3     getIdentifier operation
                              7.1.19.4     kill operation
                              7.1.19.5     plug operation
                              7.1.19.6     setVisibleDurationPosition operation
                              7.1.19.7     getVisibleDurationPosition operation
                              7.1.19.8     IDL description
                 7.1.20     RtScript object
                              7.1.20.1     setParameters operation
                              7.1.20.2     getTerminationStatus operation
                              7.1.20.3     IDL description
                 7.1.21      RtComponentOrSocket object
                              7.1.21.1     setRGS operation
                              7.1.21.2     getRGS operation
                              7.1.21.3     setOpacity operation
                              7.1.21.4     setPresentationPriority operation
                              7.1.21.5     getOpacity operation
                              7.1.21.6     getEffectiveOpacity operation
                              7.1.21.7     getPresentationPriority operation
                              7.1.21.8     setVisibleDuration operation
                              7.1.21.9     setTemporalTermination operation
                             7.1.21.10     setCurrentTemporalPosition operation
                             7.1.21.11     setSpeed operation
                             7.1.21.12     setTimestones operation
                             7.1.21.13     getInitialTemporalPosition operation
                             7.1.21.14     getTerminalTemporalPosition operation
                             7.1.21.15     getVDLength operation
                             7.1.21.16     getTemporalTermination operation
                             7.1.21.17     getCurrentTemporalPosition operation
                             7.1.21.18     getSpeedRate operation
                             7.1.21.19     getOGTR operation
                             7.1.21.20     getEffectiveSpeedRate operation
                             7.1.21.21     getEffectiveOGTR operation
                             7.1.21.22     getTimestoneStatus operation
                             7.1.21.23     setPerceptibleSizeProjection operation
                             7.1.21.24     setAspectRatio operation
                             7.1.21.25     setVisibleSize operation
                             7.1.21.26     setVisibleSizesAdjustment operation
                             7.1.21.27     setBox operation
                             7.1.21.28     setDefaultBackground operation
                             7.1.21.29     setAttachmentPoint operation
                             7.1.21.30     setAttachmentPointPosition operation
                             7.1.21.31     setVisibleSizesAlignment operation
                             7.1.21.32     setMovingAbility operation
                             7.1.21.33     setResizingAbility operation
                             7.1.21.34     setScalingAbility operation
                             7.1.21.35     setScrollingAbility operation
                             7.1.21.36     getGSR operation
                             7.1.21.37     getPS operation
                             7.1.21.38     getAspectRatio operation
                             7.1.21.39     getPSAP operation
                             7.1.21.40     getVSGS operation
                             7.1.21.41     getVS operation
                             7.1.21.42     getBox operation
                             7.1.21.43     getDefaultBackground operation
                             7.1.21.44     getVSIAP operation
                             7.1.21.45     getVSIAPPosition operation
                             7.1.21.46     getVSEAP operation
                             7.1.21.47     getVSEAPPosition operation
                             7.1.21.48     getMovingAbility operation
                             7.1.21.49     getResizingAbility operation
                             7.1.21.50     getScalingAbility operation
                             7.1.21.51     getScrollingAbility operation
                             7.1.21.52     setSelectability operation
                             7.1.21.53     setSelectionStatus operation
                             7.1.21.54     setSelectionPresentationEffectResponsibility operation
                             7.1.21.55     getSelectability operation
                             7.1.21.56     getEffectiveSelectability operation
                             7.1.21.57     getSelectionStatus operation
                             7.1.21.58     getSelectionMode operation
                             7.1.21.59     getSelectionPresentationEffectResponsibility operation
                             7.1.21.60     setModifiability operation
                             7.1.21.61     setModificationStatus operation
                             7.1.21.62     setModificationPresentationEffectResponsibility operation
                             7.1.21.63     getModifiability operation
                             7.1.21.64     getEffectiveModifiability operation
                             7.1.21.65     getModificationStatus operation
                             7.1.21.66     getModificationMode operation
                             7.1.21.67     getModificationPresentationEffectResponsibility operation
                             7.1.21.68     setNoInteractionStyle operation
                             7.1.21.69     IDL description
                 7.1.22     RtComponent object
                              7.1.22.1     IDL description
                 7.1.23     RtCompositeOrStructuralSocket object
                              7.1.23.1     setResizingStrategy operation
                              7.1.23.2     getResizingStrategy operation
                              7.1.23.3     setAudibleCompositionEffect operation
                              7.1.23.4     getAudibleCompositionEffect operation
                              7.1.23.5     getNumberOfSelectedSockets operation
                              7.1.23.6     getNumberOfModifiedSockets operation
                              7.1.23.7     setMenuInteractionStyle operation
                              7.1.23.8     setScrollingListInteractionStyle operation
                              7.1.23.9     IDL description
                 7.1.24     RtComposite object
                              7.1.24.1     IDL description
                 7.1.25     StructuralSocket object
                              7.1.25.1     IDL description
                 7.1.26     RtGenericContentOrPresentableSocket object
                              7.1.26.1     setAudibleVolume operation
                              7.1.26.2     getInitialOriginalAudibleVolume operation
                              7.1.26.3     getCurrentOriginalAudibleVolume operation
                              7.1.26.4     getEffectiveOriginalAudibleVolume operation
                              7.1.26.5     getPerceptibleAudibleVolume operation
                              7.1.26.6     setButtonInteractionStyle operation
                              7.1.26.7     IDL description
                 7.1.27     RtGenericContent object
                              7.1.27.1     IDL description
                 7.1.28     GenericPresentableSocket object
                              7.1.28.1     IDL description
                 7.1.29     RtContentOrPresentableSocket object
                              7.1.29.1     setSliderInteractionStyle operation
                              7.1.29.2     setEntryFieldInteractionStyle operation
                              7.1.29.3     IDL description
                 7.1.30     RtContent object
                              7.1.30.1     IDL description
                 7.1.31     PresentableSocket object
                              7.1.31.1     IDL description
                 7.1.32     RtMultiplexedContentOrPresentableSocket object
                              7.1.32.1     setStreamChoice operation
                              7.1.32.2     getStreamChosen operation
                              7.1.32.3     IDL description
                 7.1.33     RtMultiplexedContent object
                              7.1.33.1     IDL description
                 7.1.34     MultiplexedPresentableSocket object
                              7.1.34.1     IDL description
                 7.1.35     Channel object
                              7.1.35.1     bind operation
                              7.1.35.2     unbind operation
                              7.1.35.3     new operation
                              7.1.35.4     delete operation
                              7.1.35.5     getRtAvailabilityStatus operation
                              7.1.35.6     getIdentifier operation
                              7.1.35.7     kill operation
                              7.1.35.8     setPerceptability operation
                              7.1.35.9     getPerceptability operation
                             7.1.35.10     getAssignedPerceptibles operation
                             7.1.35.11     IDL description
                 7.1.36     Parameter definition
                 7.1.37     Exceptions
                              7.1.37.1     InvalidTarget exception
                              7.1.37.2     InvalidParameter exception
                              7.1.37.3     NotBound exception
                              7.1.37.4     AlreadyBound exception
                              7.1.37.5     IDL definition
        7.2     Optional primitives
Annex A – Complete IDL definition of the MHEG API