[−][src]Trait web_glitz::task::GpuTaskExt
Required methods
fn map<F, U>(self, f: F) -> Map<Self, F> where
F: FnOnce(Self::Output) -> U,
Self: Sized,
F: FnOnce(Self::Output) -> U,
Self: Sized,
fn join<B>(self, b: B) -> Join<Self, B, Ec> where
B: GpuTask<Ec>,
Self: Sized,
B: GpuTask<Ec>,
Self: Sized,
Combines this task with another task b, waiting for both tasks to complete in no
particular order.
This returns a new "joined" task. This joined task may progress the its sub-tasks in any
order. The joined task will finish when both sub-tasks have finished. When it finishes, it
will output a tuple (A, B) where A is this tasks output and B is task b's output.
Panics
Panics if the ContextId of b is not compatible with this task's ContextId.
fn join3<B, C>(self, b: B, c: C) -> Join3<Self, B, C, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>,
Self: Sized,
B: GpuTask<Ec>,
C: GpuTask<Ec>,
Self: Sized,
Combines this task with 2 other tasks b and c, waiting for all tasks to complete in no
particular order.
This returns a new "joined" task. This joined task may progress the its sub-tasks in any
order. The joined task will finish when all sub-tasks have finished. When it finishes, it
will output a tuple (A, B, C) where A is this tasks output, B is task b's output and
C is task c's output.
Panics
Panics if any of the ContextIds of b and c are not compatible with this task's
ContextId.
fn join4<B, C, D>(self, b: B, c: C, d: D) -> Join4<Self, B, C, D, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>,
Self: Sized,
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>,
Self: Sized,
Combines this task with 3 other tasks b, c and d, waiting for all tasks to complete in
no particular order.
This returns a new "joined" task. This joined task may progress the its sub-tasks in any
order. The joined task will finish when all sub-tasks have finished. When it finishes, it
will output a tuple (A, B, C, D) where A is this tasks output, B is task b's output,
C is task c's output and D is task d's output.
Panics
Panics if any of the ContextIds of b, c and d are not compatible with this task's
ContextId.
fn join5<B, C, D, E>(
self,
b: B,
c: C,
d: D,
e: E
) -> Join5<Self, B, C, D, E, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>,
E: GpuTask<Ec>,
Self: Sized,
self,
b: B,
c: C,
d: D,
e: E
) -> Join5<Self, B, C, D, E, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>,
E: GpuTask<Ec>,
Self: Sized,
Combines this task with 4 other tasks b, c, d and e, waiting for all tasks to
complete in no particular order.
This returns a new "joined" task. This joined task may progress the its sub-tasks in any
order. The joined task will finish when all sub-tasks have finished. When it finishes, it
will output a tuple (A, B, C, D, E) where A is this tasks output, B is task b's
output, C is task c's output, D is task d's output and E is task e's output.
Panics
Panics if any of the ContextIds of b, c, d and e are not compatible with this
task's ContextId.
fn sequence<B>(self, b: B) -> Sequence<Self, B, Ec> where
B: GpuTask<Ec>,
Self: Sized,
B: GpuTask<Ec>,
Self: Sized,
Combines this task with another task b, waiting for both tasks to complete in order.
This returns a new "sequenced" task. This sequenced task must progress its sub-tasks in
order: it may only start to progress the next task if the previous task has finished. The
sequenced task will finish when the last sub-task has finished. When it finishes, it will
output a tuple (A, B) where A is this tasks output and B is task b's output.
Panics
Panics if the ContextId of b is not compatible with this task's ContextId.
fn sequence3<B, C>(self, b: B, c: C) -> Sequence3<Self, B, C, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>,
Self: Sized,
B: GpuTask<Ec>,
C: GpuTask<Ec>,
Self: Sized,
Combines this task with 2 other tasks b and c, waiting for all tasks to complete in
order.
This returns a new "sequenced" task. This sequenced task must progress its sub-tasks in
order: it may only start to progress the next task if the previous task has finished. The
sequenced task will finish when the last sub-task has finished. When it finishes, it will
output a tuple (A, B, C) where A is this tasks output, B is task b's output and C
is task c's output.
Panics
Panics if any of the ContextIds of b and c are not compatible with this task's
ContextId.
fn sequence4<B, C, D>(self, b: B, c: C, d: D) -> Sequence4<Self, B, C, D, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>,
Self: Sized,
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>,
Self: Sized,
Combines this task with 3 other tasks b, c and d, waiting for all tasks to complete in
order.
This returns a new "sequenced" task. This sequenced task must progress its sub-tasks in
order: it may only start to progress the next task if the previous task has finished. The
sequenced task will finish when the last sub-task has finished. When it finishes, it will
output a tuple (A, B, C, D) where A is this tasks output, B is task b's output, C
is task c's output and D is task d's output.
Panics
Panics if any of the ContextIds of b, c and d are not compatible with this task's
ContextId.
fn sequence5<B, C, D, E>(
self,
b: B,
c: C,
d: D,
e: E
) -> Sequence5<Self, B, C, D, E, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>,
E: GpuTask<Ec>,
Self: Sized,
self,
b: B,
c: C,
d: D,
e: E
) -> Sequence5<Self, B, C, D, E, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>,
E: GpuTask<Ec>,
Self: Sized,
Combines this task with 4 other tasks b, c, d and e, waiting for all tasks to
complete in order.
This returns a new "sequenced" task. This sequenced task must progress its sub-tasks in
order: it may only start to progress the next task if the previous task has finished. The
sequenced task will finish when the last sub-task has finished. When it finishes, it will
output a tuple (A, B, C, D, E) where A is this tasks output, B is task b's output,
C is task c's output, D is task d's output and E is task e's output.
Panics
Panics if any of the ContextIds of b, c, d and e are not compatible with this
task's ContextId.
Implementors
impl<T, Ec> GpuTaskExt<Ec> for T where
T: GpuTask<Ec>, [src]
T: GpuTask<Ec>,
fn map<F, U>(self, f: F) -> Map<Self, F> where
F: FnOnce(Self::Output) -> U, [src]
F: FnOnce(Self::Output) -> U,
fn join<B>(self, b: B) -> Join<T, B, Ec> where
B: GpuTask<Ec>, [src]
B: GpuTask<Ec>,
fn join3<B, C>(self, b: B, c: C) -> Join3<T, B, C, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>, [src]
B: GpuTask<Ec>,
C: GpuTask<Ec>,
fn join4<B, C, D>(self, b: B, c: C, d: D) -> Join4<T, B, C, D, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>, [src]
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>,
fn join5<B, C, D, E>(self, b: B, c: C, d: D, e: E) -> Join5<T, B, C, D, E, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>,
E: GpuTask<Ec>, [src]
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>,
E: GpuTask<Ec>,
fn sequence<B>(self, b: B) -> Sequence<T, B, Ec> where
B: GpuTask<Ec>, [src]
B: GpuTask<Ec>,
fn sequence3<B, C>(self, b: B, c: C) -> Sequence3<T, B, C, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>, [src]
B: GpuTask<Ec>,
C: GpuTask<Ec>,
fn sequence4<B, C, D>(self, b: B, c: C, d: D) -> Sequence4<T, B, C, D, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>, [src]
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>,
fn sequence5<B, C, D, E>(
self,
b: B,
c: C,
d: D,
e: E
) -> Sequence5<T, B, C, D, E, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>,
E: GpuTask<Ec>, [src]
self,
b: B,
c: C,
d: D,
e: E
) -> Sequence5<T, B, C, D, E, Ec> where
B: GpuTask<Ec>,
C: GpuTask<Ec>,
D: GpuTask<Ec>,
E: GpuTask<Ec>,