
// @(#) 1.1 com/src/samples/scrtimer/iodtimer.idl, odscript, od96nt, odnt9712d 1/7/97 08:49:00 [3/21/97 17:43:00]
//#====START_GENERATED_PROLOG======================================
//#
//#
//#   COMPONENT_NAME: odscript
//#
//#   CLASSES: none
//#
//#   ORIGINS: 82,27
//#
//#
//#   (C) COPYRIGHT International Business Machines Corp. 1995,1996
//#   All Rights Reserved
//#   Licensed Materials - Property of IBM
//#   US Government Users Restricted Rights - Use, duplication or
//#   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
//#
//#   IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
//#   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
//#   PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR
//#   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
//#   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
//#   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
//#   OR PERFORMANCE OF THIS SOFTWARE.
//#
//#====END_GENERATED_PROLOG========================================
//#

//#
//#     File:           timer.idl
//#
//#     Contains:       IDL description of Scriptable Timer Part
//#
//#     Written by:     TRM
//#

#ifndef _PART_
#include "Part.idl"
#endif

#include <somobj.idl>

#include <oddsconn.idl>

interface
  M_ODS_Timer ;

interface ODS_Timer : ODDSConnection {

  attribute long Interval;
  attribute long ID;
  void Start();
  void Stop();
  void TriggerEvent();

#ifdef __SOMIDL__

  implementation {
    functionprefix = ODS_Timer;
    majorversion = 1;
    minorversion = 0;
    metaclass = M_ODS_Timer ;
    dllname = "iodtimer.dll";
    ODGuid = "{da26cc80-59c3-11d0-802c-08005a88887e}";
    releaseorder: Start, Stop, _get_Interval, _set_Interval, _get_ID,
                  _set_ID, TriggerEvent;
    override: somInit, somUninit;

    Start:ODid;                        // identify exposed methods
    Stop:ODid;
    Interval:ODid ;

    ODevent="ODS_TimerEvent";          // reference to interface that defines
                                       // events raised by this class

    // private data items
    ODDSEventMgr fEventManager;
    ODGUID       fODGuid ;
    boolean      fRunning;

  };
#endif
};

interface M_ODS_Timer : M_ODPart
{

#ifdef __SOMIDL__
  implementation
  {
    functionprefix = M_ODS_Timer;
    override:
      clsGetODPartHandlerName,
      clsGetODPartHandlerDisplayName,
      clsGetODPartKinds,
      clsGetOLE2ClassId,
      clsGetWindowsIconFileName;
  };
#endif
};

