-- IDL module extracted from ITU-T T.173 (07/1997)

module MHEG_3 { enum RtScriptStatus {RUNNING, READY, ERRONEOUS}; enum InvocationStatus {NOT_STARTED, PROCESSING, TERMINATED, ABORTED}; enum PassingMode {BY_VALUE, BY_REFERENCE}; enum Entity {TYPE, DATA, FUNCTION, MESSAGE, PACKAGE, HANDLER}; typedef unsigned short FID; typedef unsigned short DID; typedef unsigned short TID; struct ContentReference { string public_id; string system_id; }; struct ParameterDescription { PassingMode passing_mode; TID parameter_type_id; }; struct Prototype { TID return_value_type_id; sequence<ParameterDescription> signature; }; exception InvalidParameter { unsigned short rank; }; exception InvalidScript { Entity the_entity; unsigned short identifier; }; exception OperationFailed {}; interface MhScript; interface RtScript; interface RoutineInvocation; interface ScriptInterpreter { MhScript prepare (in ContentReference content_reference) raises (InvalidScript, InvalidParameter, OperationFailed); void kill (); }; interface MhScript { RtScript new () raises (OperationFailed); void destroy (); }; interface RtScript { RoutineInvocation open (in FID routine_id) raises (InvalidParameter); RtScriptStatus getRtScriptStatus(); void setPriority (in unsigned short priority); unsigned short getPriority (); DID allocate (in TID variable_type_id) raises (InvalidParameter, OperationFailed); void free (in DID variable_id) raises (InvalidParameter); void setData (in DID variable_id, in any variable_value) raises (InvalidParameter, OperationFailed); any getData (in DID data_id) raises (InvalidParameter, OperationFailed); void stop () raises (OperationFailed); void reInit () raises (OperationFailed); void delete (); }; interface RoutineInvocation { readonly attribute FID routine_id; void setParameter (in unsigned short rank, in TID parameter_type_id, in any parameter_value) raises(InvalidParameter); Prototype getPrototype (); InvocationStatus getInvocationStatus (); void run () raises (OperationFailed); void reset (); void close (); }; };