class Ecore.Poller (Eo.Base)
{
   methods {
      constructor @internal {
         [[Constructor with parameters for Ecore Poller.]]
         legacy: null;
         params {
            @in type: Ecore_Poller_Type;
            @in interval: int;
            @in func: Ecore_Task_Cb;
            @in data: const(void)*;
         }
      }
      @property interval {
         set {
            [[Changes the polling interval rate of the poller.

              This allows the changing of a poller's polling interval. It is
              useful when you want to alter a poll rate without deleting and
              re-creating a poller.

              \@if MOBILE \@since_tizen 2.3
              \@elseif WEARABLE \@since_tizen 2.3.1
              \@endif
            ]]
            legacy: ecore_poller_poller_interval_set;
            return: bool; [[true on success, false on failure.]]
         }
         get {
            [[Gets the polling interval rate of the poller.

              \@if MOBILE \@since_tizen 2.3
              \@elseif WEARABLE \@since_tizen 2.3.1
              \@endif
            ]]
            legacy: ecore_poller_poller_interval_get;
         }
         values {
            interval: int; [[The tick interval; must be a power of 2 and <= 32768.]]
         }
      }
   }
   implements {
      Eo.Base.destructor;
      Eo.Base.finalize;
   }
   constructors {
      .constructor;
   }
}
