//File: RTCosScheduling.idl
#ifndef _RT_COS_SCHEDULING_
#define _RT_COS_SCHEDULING_

#ifdef _PRE_3_0_COMPILER_
#pragma prefix "omg.org"

#include <orb.idl>
#include <PortableServer.idl>
#else
import ::CORBA;
import ::PortableServer;
#endif

// IDL
module RTCosScheduling {
  exception UnknownName {};

  // locality constrained interface
  local interface ClientScheduler {

    void schedule_activity(in string activity_name )
      raises (UnknownName);
    };

  // locality constrained interface
  local interface ServerScheduler {

    PortableServer::POA create_POA (
      in PortableServer::POA parent,
      in string adapter_name,
      in PortableServer::POAManager a_POAManager,
      in CORBA::PolicyList policies)
        raises (PortableServer::POA::AdapterAlreadyExists,
                PortableServer::POA::InvalidPolicy);

    void schedule_object(in Object obj, in string name)
      raises (UnknownName);

  };
};
#endif // _RT_COS_SCHEDULING_IDL_
