//FP_Scheduling.idl,v 1.6 2004/04/01 05:20:12 bala Exp

/**
 * @file FP_Scheduling.idl
 *
 * FP_Scheduling.idl,v 1.6 2004/04/01 05:20:12 bala Exp
 *
 * @brief Pre-compiled IDL source to help with the service context
 *        propagation of dynamic scheduling parameters using Kokyu
 *
 *   This file was used to generate the code in FP_SchedulingC.{h,i,cpp}.
 *   The steps to regenerate the code are as follows:
 *
 *   1. Run the tao_idl compiler on the pidl file.  The command used for
 *   this is:
 *
 *     tao_idl -I $TAO_ROOT -Ge 1
 *             -Wb,export_macro=Kokyu_DSRT_Schedulers_Export
 *             -Wb,export_include=Kokyu_dsrt_schedulers_export.h
 *
 *
 *   2. Then apply the patches in FP_SchedulingC.h.diff to the generated code.
 *   The patch will replace the inclusion of RTCORBAC.h and RTSchedulerC.h
 *   with RTCORBA.h and RTScheduler.h respectively.
 *
 * Apply patches using the following command:
 *
 *   patch < FP_SchedulingC.h.diff
 *
 * Note: The diff was generated in the following way:
 *
 *   Run the idl compiler as in step 1.
 *   cp FP_SchedulingC.h FP_SchedulingC.h.orig
 *   Modify FP_SchedulingC.h with changes described in step 2.
 *   diff -wBbu FP_SchedulingC.h.orig FP_SchedulingC.h > FP_SchedulingC.h.diff
 *
 */

#include "tao/RTScheduling/RTScheduler_include.pidl"
#include "tao/RTCORBA/RTCORBA_include.pidl"

module FP_Scheduling
{
  struct SegmentSchedulingParameter
  {
    RTCORBA::Priority base_priority;
  };

  local interface SegmentSchedulingParameterPolicy
  : CORBA::Policy
  {
    attribute SegmentSchedulingParameter value;
  };

  local interface FP_Scheduler : RTScheduling::Scheduler
  {
    SegmentSchedulingParameterPolicy
      create_segment_scheduling_parameter
        (in SegmentSchedulingParameter value);
  };
};
