Base Module: Timer Class Reference
Author: Steinberg

Base Module VST 3.7 SDK for developing VST plug-in

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Public Member Functions | Static Public Member Functions | List of all members
Timer Class Referenceabstract

Timer is a class that allows you to receive triggers at regular intervals. More...

`#include <timer.h>`

Inheritance diagram for Timer:

## Public Member Functions
virtual void | stop ()=0
| Stop the timer.
Public Member Functions inherited from FObject
| FObject ()=default
| default constructor...
| FObject (const FObject &)
FObject & | operator= (const FObject &)
| overloads operator "=" as the reference assignment
virtual | ~FObject ()
| destructor...
virtual FClassID | isA () const
| a local alternative to getFClassID ()
virtual bool | isA (FClassID s) const
| evaluates if the passed ID is of the FObject type
virtual bool | isTypeOf (FClassID s, bool=true) const
| evaluates if the passed ID is of the FObject type
int32 | getRefCount ()
| returns the current interface reference count
FUnknown * | unknownCast ()
| get FUnknown interface from object
tresult | queryInterface (const TUID _iid, void **obj) SMTG_OVERRIDE
| please refer to FUnknown::queryInterface ()
uint32 | addRef () SMTG_OVERRIDE
| please refer to FUnknown::addref ()
uint32 | release () SMTG_OVERRIDE
| please refer to FUnknown::release ()
void | update (FUnknown *, int32) SMTG_OVERRIDE
| empty virtual method that should be overridden by derived classes for data updates upon changes
virtual void | addDependent (IDependent *dep)
| adds dependency to the object
virtual void | removeDependent (IDependent *dep)
| removes dependency from the object
virtual void | changed (int32 msg=kChanged)
| Inform all dependents, that the object has changed.
virtual void | deferUpdate (int32 msg=kChanged)
| Similar to triggerUpdates, except only delivered in idle (usefull in collecting updates).
virtual void | updateDone (int32)
| empty virtual method that should be overridden by derived classes
virtual bool | isEqualInstance (FUnknown *d)

## Static Public Member Functions
static Timer * | create (ITimerCallback *callback, uint32 intervalMilliseconds)
| Create a timer with a given interval.
Static Public Member Functions inherited from FObject
static FClassID | getFClassID ()
| return Class ID as an ASCII string (statically)
static void | setUpdateHandler (IUpdateHandler *handler)
| set method for the local attribute
static IUpdateHandler * | getUpdateHandler ()
| get method for the local attribute
static bool | classIDsEqual (FClassID ci1, FClassID ci2)
| compares (evaluates) 2 class IDs
static FObject * | unknownToObject (FUnknown *unknown)
| pointer conversion from FUnknown to FObject

## Additional Inherited Members
Static Public Attributes inherited from FObject
static const FUID | iid
| Special UID that is used to cast an FUnknown pointer to a FObject.
Protected Attributes inherited from FObject
int32 | refCount = 1
| COM-model local reference count.
Static Protected Attributes inherited from FObject
static IUpdateHandler * | gUpdateHandler = nullptr

## Detailed Description

Timer is a class that allows you to receive triggers at regular intervals.

Note: The timer class is an abstract base class with (hidden) platform specific subclasses.

Usage:

class TimerReceiver : public FObject, public ITimerCallback
{
...
virtual void onTimer (Timer* timer)
{
// do stuff
}
...
};
TimerReceiver* receiver = new TimerReceiver ();
Timer* myTimer = Timer::create (receiver, 100); // interval: every 100ms
...
...
if (myTimer)
myTimer->release ();
if (receiver)
receiver->release ();

See Also
  ITimerCallback

## Member Function Documentation

Timer * create | ( | ITimerCallback * | callback,
|  | uint32 | intervalMilliseconds
| ) |  |
| static

Create a timer with a given interval.

Parameters

  callback | The receiver of the timer calls.
  intervalMilliseconds | The timer interval in milliseconds.

Returns
  The created timer if any, callers owns the timer. The timer starts immediately.

virtual void stop | ( |  | ) |
| pure virtual

Stop the timer.

Empty

Copyright ©2022 Steinberg Media Technologies GmbH. All Rights Reserved. This documentation is under this license.