… | |
… | |
130 | # define EV_AX_ |
130 | # define EV_AX_ |
131 | #endif |
131 | #endif |
132 | |
132 | |
133 | struct loop_ref |
133 | struct loop_ref |
134 | { |
134 | { |
135 | |
|
|
136 | loop_ref (EV_P) throw () |
135 | loop_ref (EV_P) throw () |
137 | #if EV_MULTIPLICITY |
136 | #if EV_MULTIPLICITY |
138 | : EV_AX (EV_A) |
137 | : EV_AX (EV_A) |
139 | #endif |
138 | #endif |
140 | { |
139 | { |
… | |
… | |
157 | return false; |
156 | return false; |
158 | #endif |
157 | #endif |
159 | } |
158 | } |
160 | |
159 | |
161 | #if EV_MULTIPLICITY |
160 | #if EV_MULTIPLICITY |
162 | bool operator== (struct ev_loop *other) const throw () |
161 | bool operator == (struct ev_loop *other) const throw () |
163 | { |
162 | { |
164 | return this->EV_AX == other; |
163 | return this->EV_AX == other; |
165 | } |
164 | } |
166 | |
165 | |
167 | bool operator!= (struct ev_loop *other) const throw () |
166 | bool operator != (struct ev_loop *other) const throw () |
168 | { |
167 | { |
169 | return ! (*this == other); |
168 | return ! (*this == other); |
170 | } |
169 | } |
171 | |
170 | |
172 | bool operator== (const struct ev_loop *other) const throw () |
171 | bool operator == (const struct ev_loop *other) const throw () |
173 | { |
172 | { |
174 | return this->EV_AX == other; |
173 | return this->EV_AX == other; |
175 | } |
174 | } |
176 | |
175 | |
177 | bool operator!= (const struct ev_loop *other) const throw () |
176 | bool operator != (const struct ev_loop *other) const throw () |
178 | { |
177 | { |
179 | return (*this == other); |
178 | return (*this == other); |
180 | } |
179 | } |
181 | |
180 | |
182 | operator struct ev_loop * () const throw () |
181 | operator struct ev_loop * () const throw () |
… | |
… | |
365 | }; |
364 | }; |
366 | #endif |
365 | #endif |
367 | |
366 | |
368 | struct default_loop : loop_ref |
367 | struct default_loop : loop_ref |
369 | { |
368 | { |
370 | |
|
|
371 | default_loop (unsigned int flags = AUTO) throw (bad_loop) |
369 | default_loop (unsigned int flags = AUTO) throw (bad_loop) |
372 | #if EV_MULTIPLICITY |
370 | #if EV_MULTIPLICITY |
373 | : loop_ref (ev_default_loop (flags)) |
371 | : loop_ref (ev_default_loop (flags)) |
374 | #endif |
372 | #endif |
375 | { |
373 | { |
… | |
… | |
695 | start (); |
693 | start (); |
696 | } |
694 | } |
697 | EV_END_WATCHER (sig, signal) |
695 | EV_END_WATCHER (sig, signal) |
698 | |
696 | |
699 | EV_BEGIN_WATCHER (child, child) |
697 | EV_BEGIN_WATCHER (child, child) |
700 | void set (int pid) throw () |
698 | void set (int pid, int trace = 0) throw () |
701 | { |
699 | { |
702 | int active = is_active (); |
700 | int active = is_active (); |
703 | if (active) stop (); |
701 | if (active) stop (); |
704 | ev_child_set (static_cast<ev_child *>(this), pid); |
702 | ev_child_set (static_cast<ev_child *>(this), pid, trace); |
705 | if (active) start (); |
703 | if (active) start (); |
706 | } |
704 | } |
707 | |
705 | |
708 | void start (int pid) throw () |
706 | void start (int pid, int trace = 0) throw () |
709 | { |
707 | { |
710 | set (pid); |
708 | set (pid, trace); |
711 | start (); |
709 | start (); |
712 | } |
710 | } |
713 | EV_END_WATCHER (child, child) |
711 | EV_END_WATCHER (child, child) |
714 | |
712 | |
715 | #if EV_STAT_ENABLE |
713 | #if EV_STAT_ENABLE |
… | |
… | |
773 | #undef EV_PX |
771 | #undef EV_PX |
774 | #undef EV_PX_ |
772 | #undef EV_PX_ |
775 | #undef EV_CONSTRUCT |
773 | #undef EV_CONSTRUCT |
776 | #undef EV_BEGIN_WATCHER |
774 | #undef EV_BEGIN_WATCHER |
777 | #undef EV_END_WATCHER |
775 | #undef EV_END_WATCHER |
778 | |
|
|
779 | } |
776 | } |
780 | |
777 | |
781 | #endif |
778 | #endif |
782 | |
779 | |