ubit
Public Member Functions | Friends | List of all members
ubit::UTimer Class Reference

a UTimer object fires callbacks after a given delay. More...

#include <utimer.hpp>

Inheritance diagram for ubit::UTimer:
ubit::UNode ubit::UObject

Public Member Functions

 UTimer (bool auto_delete=true)
 creates a new timer. More...
 
 UTimer (unsigned long delay, int ntimes, bool auto_delete=true)
 creates a new timer. More...
 
virtual void onAction (UCall &callback)
 adds a callback that is fired when the time is up. More...
 
virtual void onTimeout (UCall &callback)
 synonym for onAction().
 
virtual void start ()
 (re)starts the timer.
 
virtual void start (unsigned long delay, int ntimes)
 starts the timer. More...
 
virtual void stop ()
 stops the timer. More...
 
unsigned long getDelay () const
 
void setDelay (unsigned long time)
 
bool isRunning () const
 returns true if the timer is currently running.
 
int getTimerNo () const
 
bool timerCB ()
 
- Public Member Functions inherited from ubit::UNode
virtual int getNodeType () const
 returns the XML node type.
 
virtual const UStrgetNodeName () const
 return the XML node name.
 
virtual UStr getNodeValue () const
 return the XML node value.
 
virtual int getDisplayType () const
 
virtual int isDisplayable () const
 
virtual UNodetoNode ()
 dynamic cast: returns this object if it derives from UNode and null otherwise.
 
virtual const UNodetoNode () const
 dynamic cast: returns this object if it derives from UNode and null otherwise.
 
virtual bool isChildOf (const UElem &parent, bool indirect=true) const
 returns true if this object a child of 'parent'. More...
 
UParentIter pbegin () const
 returns an iterator to the beginning of the list of direct parents. More...
 
UParentIter pend () const
 returns an iterator to the end of the parent list ( More...
 
virtual UParentsparents () const
 returns the list of direct parents ( More...
 
virtual UElemgetParent (int pos=0) const
 returns the Nth direct parent. More...
 
virtual bool hasSceneGraphParent () const
 
template<class CC >
CC * findParent () const
 < this object has at least one parent in the scene graph. More...
 
virtual int getBoxParents (std::vector< UBox *> &parvect) const
 retrieves direct and indirect parents that are boxes.
 
virtual UBoxgetParent (const UView *) const
 returns the direct or indirect parent that contains this view. More...
 
virtual UViewgetParentView (const UView *) const
 returns the direct or indirect parent's view that contains this view. More...
 
virtual UBoxgetParent (const UInputEvent &) const
 
virtual UViewgetParentView (const UInputEvent &) const
 
virtual void removeFromParents (bool update_parents=true)
 [impl] removes this object from all direct parents. More...
 
virtual bool fire (UEvent &) const
 fires callback functions that match this event.
 
virtual UNoderemoveAllAttrs (bool autodel=true)
 removes all attributes (if any, redefined by subclasses).
 
virtual void update ()
 updates object graphics.
 
bool isAutoUpdate () const
 return current update policy: see setAutoUpdate().
 
UNodesetAutoUpdate (bool state=true)
 changes the update policy of this object when its is modified. More...
 
void fireParents (const UCond &c, UNode *n) const
 
void updateAutoParents (const UUpdate &m)
 
virtual void addChangeCall (UCall &)
 
virtual UElemgetSubGroup () const
 
void _addAttr (const UChild &attribute)
 [impl] to be removed @.
 
UChildIter _abegin () const
 [impl] to be removed @.
 
UChildIter _aend () const
 [impl] to be removed @.
 
- Public Member Functions inherited from ubit::UObject
 UObject (const UObject &)
 
UObjectoperator= (const UObject &)
 
virtual const UClassgetClass () const
 instance method that returns the metaclass of this object. More...
 
const UStrgetClassName () const
 returns getClass().getName().
 
virtual void error (const char *function_name, const char *format,...) const
 prints out an error message. More...
 
virtual void warning (const char *function_name, const char *format,...) const
 prints out a warning message: More...
 
bool isDeletable () const
 checks if this object can be destroyed by 'delete'. More...
 
bool isConst () const
 checks whether the content of this object can be modified ( More...
 
UObjectsetConst ()
 specifies that the content of this object cannot be modified. More...
 
bool isAutoUpdate () const
 return current update policy: More...
 
UObjectsetAutoUpdate (bool state=true)
 changes the update policy of this object when its is modified. More...
 
bool isIgnoringChangeCallbacks () const
 return true if change callbacks are fired.
 
UObjectignoreChangeCallbacks (bool state)
 change callbacks are not fired if argument is true.
 
virtual UAttrtoAttr ()
 dynamic cast: returns this object if it derives from UAttr and null otherwise.
 
virtual const UAttrtoAttr () const
 dynamic cast: returns this object if it derives from UAttr and null otherwise.
 
virtual UElemtoElem ()
 dynamic cast: returns this object if it derives from UElem and null otherwise.
 
virtual const UElemtoElem () const
 dynamic cast: returns this object if it derives from UElem and null otherwise.
 
virtual UDatatoData ()
 dynamic cast: returns this object if it derives from UData and null otherwise.
 
virtual const UDatatoData () const
 dynamic cast: returns this object if it derives from UData and null otherwise.
 
virtual UStrtoStr ()
 dynamic cast: returns this object if it derives from UStr and null otherwise.
 
virtual const UStrtoStr () const
 dynamic cast: returns this object if it derives from UStr and null otherwise.
 
virtual UCalltoCall ()
 dynamic cast: returns this object if it derives from UCall and null otherwise.
 
virtual const UCalltoCall () const
 dynamic cast: returns this object if it derives from UCall and null otherwise.
 
virtual UBoxtoBox ()
 dynamic cast: returns this object if it derives from UBox and null otherwise.
 
virtual const UBoxtoBox () const
 dynamic cast: returns this object if it derives from UBox and null otherwise.
 
virtual UWintoWin ()
 dynamic cast: returns this object if it derives from UWin and null otherwise.
 
virtual const UWintoWin () const
 dynamic cast: returns this object if it derives from UWin and null otherwise.
 
virtual UMenutoMenu ()
 dynamic cast: returns this object if it derives from UMenu and null otherwise.
 
virtual const UMenutoMenu () const
 dynamic cast: returns this object if it derives from UMenu and null otherwise.
 
State getState () const
 returns the current object state.
 
void setState (State s)
 changes the object state.
 
PtrCount getPtrCount () const
 [impl] returns the number of uptr<> smart pointers that are pointing to this object.
 
bool checkConst () const
 [impl] produces an error if this object is logically constant ( More...
 
bool isDestructed () const
 [impl] this object has been destructed (but memory has not been freed yet).
 
bool isDestructing () const
 [impl] this object is being destructed (one of its destructors has been called).
 
void * operator new (size_t)
 < [impl] returns true if there is at least one scene graph parent (redefined by UNode). More...
 
void operator delete (void *)
 delete operator is forbidden on instances that derive from UObject.
 
void addPtr () const
 [Impl] a uptr is added to this object.
 
void removePtr () const
 [Impl] a uptr is removed from this object.
 

Friends

class UAppli
 
class UAppliImpl
 
class UTimerImpl
 

Additional Inherited Members

- Public Types inherited from ubit::UNode
enum  NodeType {
  ELEMENT_NODE = 1, ATTRIBUTE_NODE = 2, TEXT_NODE = 3, CDATA_SECTION_NODE = 4,
  ENTITY_REFERENCE_NODE = 5, ENTITY_NODE = 6, PROCESSING_INSTRUCTION_NODE = 7, COMMENT_NODE = 8,
  DOCUMENT_NODE = 9, DOCUMENT_TYPE_NODE = 10, DOCUMENT_FRAGMENT_NODE = 11, NOTATION_NODE = 12
}
 redefines Class() and getClass() methods ( More...
 
enum  DisplayType {
  WINLIST =-1, UNDISPLAYBLE =0, ATTRIBUTE, DATA,
  INLINE, BLOCK, BORDER, HARDWIN,
  SOFTWIN
}
 Ubit display types.
 
- Public Types inherited from ubit::UObject
typedef unsigned char State
 
typedef short PtrCount
 
- Static Public Member Functions inherited from ubit::UObject
static const char * getVersion ()
 returns the version of the Ubit package.
 
static const UClassClass ()
 class method that returns the metaclass of this class. More...
 
static UStylecreateStyle ()
 
- Static Public Attributes inherited from ubit::UObject
static UConst UCONST
 UCONST can be given as an argument to some constructors to make the object constant. More...
 
- Protected Member Functions inherited from ubit::UNode
 UNode ()
 constructor, can anly be called by subclasses because UNode is abstract.
 
virtual ~UNode ()
 destructor, note that children are recursively destroyed except if pointed elsewhere ( More...
 
virtual void addingTo (UChild &, UElem &parent)
 called when this object is added to a parent.
 
virtual void removingFrom (UChild &, UElem &parent)
 called when this object is removed from a parent (SEE DETAILS IF YOU REDEFINE THIS METHOD). More...
 
virtual void destructs ()
 unlinks the object from its parents and destroys its children.
 
- Protected Attributes inherited from ubit::UNode
UParents _parents
 
UChildren _attributes
 
- Protected Attributes inherited from ubit::UObject
PtrCount ptr_count
 
Modes omodes
 
State ostate
 

Detailed Description

a UTimer object fires callbacks after a given delay.

Callbacks can be fired repeatedly (each time after the delay) or only one time. Timers can also be used to postpone operations that take a long amount of time to execute by using a delay of 0 msec.

Exemple:

   uptr<UTimer> t = new UTimer();
   t->onAction( ucall(x, y, printArgs) );
   t->onAction( ucall(obj, val, &Demo::doIt) );
   t->start(1000);

Constructor & Destructor Documentation

§ UTimer() [1/2]

ubit::UTimer::UTimer ( bool  auto_delete = true)

creates a new timer.

See also
UTimer(unsigned long delay, int ntimes, bool auto_delete); 'delay' and 'ntimes' are set to 0 by default.

§ UTimer() [2/2]

ubit::UTimer::UTimer ( unsigned long  delay,
int  ntimes,
bool  auto_delete = true 
)

creates a new timer.

  • 'delay' is in milliseconds. if 'delay' = 0, the timer is immediately fired when the main loop becomes idle.
  • 'ntimes' specifies how many times the callbacks are fired (each time after the specified 'delay'). If ntimes = -1 the callbacks are fired repeatedly until stop() is called or the timer is destroyed.
  • if 'auto_delete' is true, the timer is automatically deleted on completion if was created in the heap and is not pointed by a uptr<> (
    See also
    UPtr). This feature avoids memory leaks and is especially useful if the timer is only used once

Member Function Documentation

§ onAction()

void ubit::UTimer::onAction ( UCall callback)
virtual

adds a callback that is fired when the time is up.

'callback' is a ucall<> expression (see UCall). It is destroyed when the timer is destroyed except if it is referenced by a uptr<> or another node (see UNode).

§ start()

void ubit::UTimer::start ( unsigned long  delay,
int  ntimes 
)
virtual

starts the timer.

See also
UTimer(unsigned long delay, int ntimes);

§ stop()

void ubit::UTimer::stop ( )
virtual

stops the timer.

the UTimer is destroyed if it was started in auto_delete mode (see start()) and if it is not referenced elsewhere (see UNode).


The documentation for this class was generated from the following files: