├── .gitignore ├── README.md ├── fun_with_points ├── README.md ├── SConstruct ├── exercise.cu ├── performance.cu ├── site_scons │ └── site_tools │ │ └── nvcc.py ├── spoilers.cu ├── thrust │ ├── adjacent_difference.h │ ├── advance.h │ ├── binary_search.h │ ├── copy.h │ ├── count.h │ ├── detail │ │ ├── adjacent_difference.inl │ │ ├── advance.inl │ │ ├── allocator │ │ │ ├── allocator_traits.h │ │ │ ├── allocator_traits.inl │ │ │ ├── copy_construct_range.h │ │ │ ├── copy_construct_range.inl │ │ │ ├── default_construct_range.h │ │ │ ├── default_construct_range.inl │ │ │ ├── destroy_range.h │ │ │ ├── destroy_range.inl │ │ │ ├── fill_construct_range.h │ │ │ ├── fill_construct_range.inl │ │ │ ├── malloc_allocator.h │ │ │ ├── malloc_allocator.inl │ │ │ ├── no_throw_allocator.h │ │ │ ├── tagged_allocator.h │ │ │ ├── tagged_allocator.inl │ │ │ ├── temporary_allocator.h │ │ │ └── temporary_allocator.inl │ │ ├── binary_search.inl │ │ ├── config.h │ │ ├── config │ │ │ ├── compiler.h │ │ │ ├── compiler_fence.h │ │ │ ├── config.h │ │ │ ├── debug.h │ │ │ ├── device_system.h │ │ │ ├── forceinline.h │ │ │ ├── hd_warning_disable.h │ │ │ ├── host_device.h │ │ │ ├── host_system.h │ │ │ └── simple_defines.h │ │ ├── contiguous_storage.h │ │ ├── contiguous_storage.inl │ │ ├── copy.h │ │ ├── copy.inl │ │ ├── copy_if.h │ │ ├── copy_if.inl │ │ ├── count.inl │ │ ├── cstdint.h │ │ ├── device_delete.inl │ │ ├── device_free.inl │ │ ├── device_malloc.inl │ │ ├── device_new.inl │ │ ├── device_ptr.inl │ │ ├── device_reference.inl │ │ ├── device_vector.inl │ │ ├── dispatch │ │ │ └── is_trivial_copy.h │ │ ├── dispatchable.h │ │ ├── distance.inl │ │ ├── equal.inl │ │ ├── extrema.inl │ │ ├── fill.inl │ │ ├── find.inl │ │ ├── for_each.inl │ │ ├── function.h │ │ ├── functional.inl │ │ ├── functional │ │ │ ├── actor.h │ │ │ ├── actor.inl │ │ │ ├── argument.h │ │ │ ├── composite.h │ │ │ ├── operators.h │ │ │ ├── operators │ │ │ │ ├── arithmetic_operators.h │ │ │ │ ├── assignment_operator.h │ │ │ │ ├── bitwise_operators.h │ │ │ │ ├── compound_assignment_operators.h │ │ │ │ ├── logical_operators.h │ │ │ │ ├── operator_adaptors.h │ │ │ │ └── relational_operators.h │ │ │ ├── placeholder.h │ │ │ └── value.h │ │ ├── gather.inl │ │ ├── generate.inl │ │ ├── host_vector.inl │ │ ├── inner_product.inl │ │ ├── integer_traits.h │ │ ├── internal_functional.h │ │ ├── logical.inl │ │ ├── malloc_and_free.h │ │ ├── merge.inl │ │ ├── minmax.h │ │ ├── mismatch.inl │ │ ├── mpl │ │ │ └── math.h │ │ ├── numeric_traits.h │ │ ├── overlapped_copy.h │ │ ├── pair.inl │ │ ├── partition.inl │ │ ├── pointer.h │ │ ├── pointer.inl │ │ ├── range │ │ │ └── tail_flags.h │ │ ├── raw_pointer_cast.h │ │ ├── raw_reference_cast.h │ │ ├── raw_reference_cast.inl │ │ ├── reduce.inl │ │ ├── reference.h │ │ ├── reference.inl │ │ ├── reference_forward_declaration.h │ │ ├── remove.inl │ │ ├── replace.inl │ │ ├── reverse.inl │ │ ├── scan.inl │ │ ├── scatter.inl │ │ ├── sequence.inl │ │ ├── set_operations.inl │ │ ├── sort.inl │ │ ├── static_assert.h │ │ ├── swap.h │ │ ├── swap.inl │ │ ├── swap_ranges.inl │ │ ├── tabulate.inl │ │ ├── temporary_array.h │ │ ├── temporary_array.inl │ │ ├── temporary_buffer.h │ │ ├── transform.inl │ │ ├── transform_reduce.inl │ │ ├── transform_scan.inl │ │ ├── trivial_sequence.h │ │ ├── tuple.inl │ │ ├── tuple_meta_transform.h │ │ ├── tuple_transform.h │ │ ├── type_traits.h │ │ ├── type_traits │ │ │ ├── algorithm │ │ │ │ └── intermediate_type_from_function_and_iterators.h │ │ │ ├── function_traits.h │ │ │ ├── has_member_function.h │ │ │ ├── has_nested_type.h │ │ │ ├── has_trivial_assign.h │ │ │ ├── is_call_possible.h │ │ │ ├── is_metafunction_defined.h │ │ │ ├── iterator │ │ │ │ ├── is_discard_iterator.h │ │ │ │ └── is_output_iterator.h │ │ │ ├── minimum_type.h │ │ │ ├── pointer_traits.h │ │ │ └── result_of.h │ │ ├── uninitialized_copy.inl │ │ ├── uninitialized_fill.inl │ │ ├── unique.inl │ │ ├── use_default.h │ │ ├── util │ │ │ ├── align.h │ │ │ └── blocking.h │ │ ├── vector_base.h │ │ └── vector_base.inl │ ├── device_allocator.h │ ├── device_delete.h │ ├── device_free.h │ ├── device_malloc.h │ ├── device_malloc_allocator.h │ ├── device_new.h │ ├── device_new_allocator.h │ ├── device_ptr.h │ ├── device_reference.h │ ├── device_vector.h │ ├── distance.h │ ├── equal.h │ ├── extrema.h │ ├── fill.h │ ├── find.h │ ├── for_each.h │ ├── functional.h │ ├── gather.h │ ├── generate.h │ ├── host_vector.h │ ├── inner_product.h │ ├── iterator │ │ ├── constant_iterator.h │ │ ├── counting_iterator.h │ │ ├── detail │ │ │ ├── any_assign.h │ │ │ ├── any_system_tag.h │ │ │ ├── constant_iterator_base.h │ │ │ ├── counting_iterator.inl │ │ │ ├── device_system_tag.h │ │ │ ├── discard_iterator_base.h │ │ │ ├── distance_from_result.h │ │ │ ├── host_system_tag.h │ │ │ ├── is_iterator_category.h │ │ │ ├── is_trivial_iterator.h │ │ │ ├── iterator_adaptor_base.h │ │ │ ├── iterator_category_to_system.h │ │ │ ├── iterator_category_to_traversal.h │ │ │ ├── iterator_facade_category.h │ │ │ ├── iterator_traits.inl │ │ │ ├── iterator_traversal_tags.h │ │ │ ├── minimum_category.h │ │ │ ├── minimum_system.h │ │ │ ├── normal_iterator.h │ │ │ ├── permutation_iterator_base.h │ │ │ ├── retag.h │ │ │ ├── reverse_iterator.inl │ │ │ ├── reverse_iterator_base.h │ │ │ ├── tagged_iterator.h │ │ │ ├── transform_iterator.inl │ │ │ ├── tuple_of_iterator_references.h │ │ │ ├── universal_categories.h │ │ │ ├── zip_iterator.inl │ │ │ └── zip_iterator_base.h │ │ ├── discard_iterator.h │ │ ├── iterator_adaptor.h │ │ ├── iterator_categories.h │ │ ├── iterator_facade.h │ │ ├── iterator_traits.h │ │ ├── permutation_iterator.h │ │ ├── retag.h │ │ ├── reverse_iterator.h │ │ ├── transform_iterator.h │ │ └── zip_iterator.h │ ├── logical.h │ ├── memory.h │ ├── merge.h │ ├── mismatch.h │ ├── pair.h │ ├── partition.h │ ├── random.h │ ├── random │ │ ├── detail │ │ │ ├── discard_block_engine.inl │ │ │ ├── linear_congruential_engine.inl │ │ │ ├── linear_congruential_engine_discard.h │ │ │ ├── linear_feedback_shift_engine.inl │ │ │ ├── linear_feedback_shift_engine_wordmask.h │ │ │ ├── mod.h │ │ │ ├── normal_distribution.inl │ │ │ ├── normal_distribution_base.h │ │ │ ├── random_core_access.h │ │ │ ├── subtract_with_carry_engine.inl │ │ │ ├── uniform_int_distribution.inl │ │ │ ├── uniform_real_distribution.inl │ │ │ ├── xor_combine_engine.inl │ │ │ └── xor_combine_engine_max.h │ │ ├── discard_block_engine.h │ │ ├── linear_congruential_engine.h │ │ ├── linear_feedback_shift_engine.h │ │ ├── normal_distribution.h │ │ ├── subtract_with_carry_engine.h │ │ ├── uniform_int_distribution.h │ │ ├── uniform_real_distribution.h │ │ └── xor_combine_engine.h │ ├── reduce.h │ ├── remove.h │ ├── replace.h │ ├── reverse.h │ ├── scan.h │ ├── scatter.h │ ├── sequence.h │ ├── set_operations.h │ ├── sort.h │ ├── swap.h │ ├── system │ │ ├── cpp │ │ │ ├── detail │ │ │ │ ├── adjacent_difference.h │ │ │ │ ├── adl_targets.h │ │ │ │ ├── assign_value.h │ │ │ │ ├── binary_search.h │ │ │ │ ├── copy.h │ │ │ │ ├── copy_if.h │ │ │ │ ├── count.h │ │ │ │ ├── dispatch │ │ │ │ │ └── sort.h │ │ │ │ ├── equal.h │ │ │ │ ├── extrema.h │ │ │ │ ├── fill.h │ │ │ │ ├── find.h │ │ │ │ ├── for_each.h │ │ │ │ ├── gather.h │ │ │ │ ├── generate.h │ │ │ │ ├── get_value.h │ │ │ │ ├── inner_product.h │ │ │ │ ├── iter_swap.h │ │ │ │ ├── logical.h │ │ │ │ ├── malloc_and_free.h │ │ │ │ ├── memory.inl │ │ │ │ ├── merge.h │ │ │ │ ├── mismatch.h │ │ │ │ ├── partition.h │ │ │ │ ├── reduce.h │ │ │ │ ├── reduce_by_key.h │ │ │ │ ├── remove.h │ │ │ │ ├── replace.h │ │ │ │ ├── reverse.h │ │ │ │ ├── scan.h │ │ │ │ ├── scan_by_key.h │ │ │ │ ├── scatter.h │ │ │ │ ├── sequence.h │ │ │ │ ├── set_operations.h │ │ │ │ ├── sort.h │ │ │ │ ├── swap_ranges.h │ │ │ │ ├── tabulate.h │ │ │ │ ├── tag.h │ │ │ │ ├── temporary_buffer.h │ │ │ │ ├── transform.h │ │ │ │ ├── transform_reduce.h │ │ │ │ ├── transform_scan.h │ │ │ │ ├── uninitialized_copy.h │ │ │ │ ├── uninitialized_fill.h │ │ │ │ ├── unique.h │ │ │ │ ├── unique_by_key.h │ │ │ │ └── vector.inl │ │ │ ├── memory.h │ │ │ └── vector.h │ │ ├── cuda │ │ │ ├── detail │ │ │ │ ├── adjacent_difference.h │ │ │ │ ├── adjacent_difference.inl │ │ │ │ ├── adl_targets.h │ │ │ │ ├── assign_value.h │ │ │ │ ├── binary_search.h │ │ │ │ ├── block │ │ │ │ │ ├── copy.h │ │ │ │ │ ├── exclusive_scan.h │ │ │ │ │ ├── inclusive_scan.h │ │ │ │ │ ├── merge.h │ │ │ │ │ ├── merge.inl │ │ │ │ │ ├── merging_sort.h │ │ │ │ │ ├── odd_even_sort.h │ │ │ │ │ └── reduce.h │ │ │ │ ├── copy.h │ │ │ │ ├── copy.inl │ │ │ │ ├── copy_cross_system.h │ │ │ │ ├── copy_cross_system.inl │ │ │ │ ├── copy_device_to_device.h │ │ │ │ ├── copy_device_to_device.inl │ │ │ │ ├── copy_if.h │ │ │ │ ├── copy_if.inl │ │ │ │ ├── count.h │ │ │ │ ├── cuda_launch_config.h │ │ │ │ ├── default_decomposition.h │ │ │ │ ├── default_decomposition.inl │ │ │ │ ├── detail │ │ │ │ │ ├── alignment.h │ │ │ │ │ ├── b40c │ │ │ │ │ │ ├── kernel_utils.h │ │ │ │ │ │ ├── radixsort_api.h │ │ │ │ │ │ ├── radixsort_kernel_common.h │ │ │ │ │ │ ├── radixsort_key_conversion.h │ │ │ │ │ │ ├── radixsort_reduction_kernel.h │ │ │ │ │ │ ├── radixsort_scanscatter_kernel.h │ │ │ │ │ │ ├── radixsort_spine_kernel.h │ │ │ │ │ │ └── vector_types.h │ │ │ │ │ ├── balanced_path.h │ │ │ │ │ ├── cached_temporary_allocator.h │ │ │ │ │ ├── fast_scan.h │ │ │ │ │ ├── fast_scan.inl │ │ │ │ │ ├── launch_calculator.h │ │ │ │ │ ├── launch_calculator.inl │ │ │ │ │ ├── launch_closure.h │ │ │ │ │ ├── launch_closure.inl │ │ │ │ │ ├── set_operation.h │ │ │ │ │ ├── set_operation.inl │ │ │ │ │ ├── stable_merge_sort.h │ │ │ │ │ ├── stable_merge_sort.inl │ │ │ │ │ ├── stable_primitive_sort.h │ │ │ │ │ ├── stable_primitive_sort.inl │ │ │ │ │ ├── stable_radix_sort.h │ │ │ │ │ ├── stable_radix_sort.inl │ │ │ │ │ ├── stable_sort_by_count.h │ │ │ │ │ ├── stable_sort_by_count.inl │ │ │ │ │ └── uninitialized.h │ │ │ │ ├── equal.h │ │ │ │ ├── error.inl │ │ │ │ ├── extern_shared_ptr.h │ │ │ │ ├── extrema.h │ │ │ │ ├── fill.h │ │ │ │ ├── fill.inl │ │ │ │ ├── find.h │ │ │ │ ├── for_each.h │ │ │ │ ├── for_each.inl │ │ │ │ ├── gather.h │ │ │ │ ├── generate.h │ │ │ │ ├── get_value.h │ │ │ │ ├── guarded_cuda_runtime_api.h │ │ │ │ ├── inner_product.h │ │ │ │ ├── iter_swap.h │ │ │ │ ├── logical.h │ │ │ │ ├── malloc_and_free.h │ │ │ │ ├── memory.inl │ │ │ │ ├── merge.h │ │ │ │ ├── merge.inl │ │ │ │ ├── mismatch.h │ │ │ │ ├── partition.h │ │ │ │ ├── reduce.h │ │ │ │ ├── reduce.inl │ │ │ │ ├── reduce_by_key.h │ │ │ │ ├── reduce_by_key.inl │ │ │ │ ├── reduce_intervals.h │ │ │ │ ├── reduce_intervals.inl │ │ │ │ ├── remove.h │ │ │ │ ├── replace.h │ │ │ │ ├── reverse.h │ │ │ │ ├── runtime_introspection.h │ │ │ │ ├── runtime_introspection.inl │ │ │ │ ├── scan.h │ │ │ │ ├── scan.inl │ │ │ │ ├── scan_by_key.h │ │ │ │ ├── scatter.h │ │ │ │ ├── sequence.h │ │ │ │ ├── set_difference.inl │ │ │ │ ├── set_intersection.inl │ │ │ │ ├── set_operations.h │ │ │ │ ├── set_symmetric_difference.inl │ │ │ │ ├── set_union.inl │ │ │ │ ├── sort.h │ │ │ │ ├── sort.inl │ │ │ │ ├── swap_ranges.h │ │ │ │ ├── synchronize.h │ │ │ │ ├── synchronize.inl │ │ │ │ ├── tabulate.h │ │ │ │ ├── tag.h │ │ │ │ ├── temporary_buffer.h │ │ │ │ ├── temporary_indirect_permutation.h │ │ │ │ ├── transform.h │ │ │ │ ├── transform_reduce.h │ │ │ │ ├── transform_scan.h │ │ │ │ ├── trivial_copy.h │ │ │ │ ├── trivial_copy.inl │ │ │ │ ├── uninitialized_copy.h │ │ │ │ ├── uninitialized_fill.h │ │ │ │ ├── unique.h │ │ │ │ ├── unique_by_key.h │ │ │ │ └── vector.inl │ │ │ ├── error.h │ │ │ ├── experimental │ │ │ │ └── pinned_allocator.h │ │ │ ├── memory.h │ │ │ └── vector.h │ │ ├── detail │ │ │ ├── adl │ │ │ │ ├── adjacent_difference.h │ │ │ │ ├── assign_value.h │ │ │ │ ├── binary_search.h │ │ │ │ ├── copy.h │ │ │ │ ├── copy_if.h │ │ │ │ ├── count.h │ │ │ │ ├── equal.h │ │ │ │ ├── extrema.h │ │ │ │ ├── fill.h │ │ │ │ ├── find.h │ │ │ │ ├── for_each.h │ │ │ │ ├── gather.h │ │ │ │ ├── generate.h │ │ │ │ ├── get_value.h │ │ │ │ ├── inner_product.h │ │ │ │ ├── iter_swap.h │ │ │ │ ├── logical.h │ │ │ │ ├── malloc_and_free.h │ │ │ │ ├── merge.h │ │ │ │ ├── mismatch.h │ │ │ │ ├── partition.h │ │ │ │ ├── reduce.h │ │ │ │ ├── reduce_by_key.h │ │ │ │ ├── remove.h │ │ │ │ ├── replace.h │ │ │ │ ├── reverse.h │ │ │ │ ├── scan.h │ │ │ │ ├── scan_by_key.h │ │ │ │ ├── scatter.h │ │ │ │ ├── sequence.h │ │ │ │ ├── set_operations.h │ │ │ │ ├── sort.h │ │ │ │ ├── swap_ranges.h │ │ │ │ ├── tabulate.h │ │ │ │ ├── temporary_buffer.h │ │ │ │ ├── transform.h │ │ │ │ ├── transform_reduce.h │ │ │ │ ├── transform_scan.h │ │ │ │ ├── uninitialized_copy.h │ │ │ │ ├── uninitialized_fill.h │ │ │ │ ├── unique.h │ │ │ │ └── unique_by_key.h │ │ │ ├── bad_alloc.h │ │ │ ├── errno.h │ │ │ ├── error_category.inl │ │ │ ├── error_code.inl │ │ │ ├── error_condition.inl │ │ │ ├── generic │ │ │ │ ├── adjacent_difference.h │ │ │ │ ├── adjacent_difference.inl │ │ │ │ ├── advance.h │ │ │ │ ├── advance.inl │ │ │ │ ├── binary_search.h │ │ │ │ ├── binary_search.inl │ │ │ │ ├── copy.h │ │ │ │ ├── copy.inl │ │ │ │ ├── copy_if.h │ │ │ │ ├── copy_if.inl │ │ │ │ ├── count.h │ │ │ │ ├── count.inl │ │ │ │ ├── distance.h │ │ │ │ ├── distance.inl │ │ │ │ ├── equal.h │ │ │ │ ├── equal.inl │ │ │ │ ├── extrema.h │ │ │ │ ├── extrema.inl │ │ │ │ ├── fill.h │ │ │ │ ├── find.h │ │ │ │ ├── find.inl │ │ │ │ ├── for_each.h │ │ │ │ ├── gather.h │ │ │ │ ├── gather.inl │ │ │ │ ├── generate.h │ │ │ │ ├── generate.inl │ │ │ │ ├── inner_product.h │ │ │ │ ├── inner_product.inl │ │ │ │ ├── logical.h │ │ │ │ ├── memory.h │ │ │ │ ├── memory.inl │ │ │ │ ├── merge.h │ │ │ │ ├── merge.inl │ │ │ │ ├── mismatch.h │ │ │ │ ├── mismatch.inl │ │ │ │ ├── partition.h │ │ │ │ ├── partition.inl │ │ │ │ ├── reduce.h │ │ │ │ ├── reduce.inl │ │ │ │ ├── reduce_by_key.h │ │ │ │ ├── reduce_by_key.inl │ │ │ │ ├── remove.h │ │ │ │ ├── remove.inl │ │ │ │ ├── replace.h │ │ │ │ ├── replace.inl │ │ │ │ ├── reverse.h │ │ │ │ ├── reverse.inl │ │ │ │ ├── scalar │ │ │ │ │ ├── binary_search.h │ │ │ │ │ └── binary_search.inl │ │ │ │ ├── scan.h │ │ │ │ ├── scan.inl │ │ │ │ ├── scan_by_key.h │ │ │ │ ├── scan_by_key.inl │ │ │ │ ├── scatter.h │ │ │ │ ├── scatter.inl │ │ │ │ ├── select_system.h │ │ │ │ ├── sequence.h │ │ │ │ ├── sequence.inl │ │ │ │ ├── set_operations.h │ │ │ │ ├── set_operations.inl │ │ │ │ ├── sort.h │ │ │ │ ├── sort.inl │ │ │ │ ├── swap_ranges.h │ │ │ │ ├── swap_ranges.inl │ │ │ │ ├── tabulate.h │ │ │ │ ├── tabulate.inl │ │ │ │ ├── tag.h │ │ │ │ ├── temporary_buffer.h │ │ │ │ ├── temporary_buffer.inl │ │ │ │ ├── transform.h │ │ │ │ ├── transform.inl │ │ │ │ ├── transform_reduce.h │ │ │ │ ├── transform_reduce.inl │ │ │ │ ├── transform_scan.h │ │ │ │ ├── transform_scan.inl │ │ │ │ ├── type_traits.h │ │ │ │ ├── uninitialized_copy.h │ │ │ │ ├── uninitialized_copy.inl │ │ │ │ ├── uninitialized_fill.h │ │ │ │ ├── uninitialized_fill.inl │ │ │ │ ├── unique.h │ │ │ │ ├── unique.inl │ │ │ │ ├── unique_by_key.h │ │ │ │ └── unique_by_key.inl │ │ │ ├── internal │ │ │ │ ├── decompose.h │ │ │ │ └── scalar │ │ │ │ │ ├── adjacent_difference.h │ │ │ │ │ ├── binary_search.h │ │ │ │ │ ├── copy.h │ │ │ │ │ ├── copy.inl │ │ │ │ │ ├── copy_backward.h │ │ │ │ │ ├── copy_if.h │ │ │ │ │ ├── extrema.h │ │ │ │ │ ├── find.h │ │ │ │ │ ├── for_each.h │ │ │ │ │ ├── general_copy.h │ │ │ │ │ ├── insertion_sort.h │ │ │ │ │ ├── merge.h │ │ │ │ │ ├── merge.inl │ │ │ │ │ ├── partition.h │ │ │ │ │ ├── reduce.h │ │ │ │ │ ├── reduce_by_key.h │ │ │ │ │ ├── remove.h │ │ │ │ │ ├── scan.h │ │ │ │ │ ├── scan_by_key.h │ │ │ │ │ ├── set_operations.h │ │ │ │ │ ├── sort.h │ │ │ │ │ ├── sort.inl │ │ │ │ │ ├── stable_merge_sort.h │ │ │ │ │ ├── stable_merge_sort.inl │ │ │ │ │ ├── stable_primitive_sort.h │ │ │ │ │ ├── stable_primitive_sort.inl │ │ │ │ │ ├── stable_radix_sort.h │ │ │ │ │ ├── stable_radix_sort.inl │ │ │ │ │ ├── trivial_copy.h │ │ │ │ │ ├── unique.h │ │ │ │ │ └── unique_by_key.h │ │ │ └── system_error.inl │ │ ├── error_code.h │ │ ├── omp │ │ │ ├── detail │ │ │ │ ├── adjacent_difference.h │ │ │ │ ├── adl_targets.h │ │ │ │ ├── assign_value.h │ │ │ │ ├── binary_search.h │ │ │ │ ├── copy.h │ │ │ │ ├── copy.inl │ │ │ │ ├── copy_if.h │ │ │ │ ├── copy_if.inl │ │ │ │ ├── count.h │ │ │ │ ├── default_decomposition.h │ │ │ │ ├── default_decomposition.inl │ │ │ │ ├── equal.h │ │ │ │ ├── extrema.h │ │ │ │ ├── fill.h │ │ │ │ ├── find.h │ │ │ │ ├── for_each.h │ │ │ │ ├── for_each.inl │ │ │ │ ├── gather.h │ │ │ │ ├── generate.h │ │ │ │ ├── get_value.h │ │ │ │ ├── inner_product.h │ │ │ │ ├── iter_swap.h │ │ │ │ ├── logical.h │ │ │ │ ├── malloc_and_free.h │ │ │ │ ├── memory.inl │ │ │ │ ├── merge.h │ │ │ │ ├── mismatch.h │ │ │ │ ├── partition.h │ │ │ │ ├── partition.inl │ │ │ │ ├── reduce.h │ │ │ │ ├── reduce.inl │ │ │ │ ├── reduce_by_key.h │ │ │ │ ├── reduce_by_key.inl │ │ │ │ ├── reduce_intervals.h │ │ │ │ ├── reduce_intervals.inl │ │ │ │ ├── remove.h │ │ │ │ ├── remove.inl │ │ │ │ ├── replace.h │ │ │ │ ├── reverse.h │ │ │ │ ├── scan.h │ │ │ │ ├── scan_by_key.h │ │ │ │ ├── scatter.h │ │ │ │ ├── sequence.h │ │ │ │ ├── set_operations.h │ │ │ │ ├── sort.h │ │ │ │ ├── sort.inl │ │ │ │ ├── swap_ranges.h │ │ │ │ ├── tabulate.h │ │ │ │ ├── tag.h │ │ │ │ ├── temporary_buffer.h │ │ │ │ ├── transform.h │ │ │ │ ├── transform_reduce.h │ │ │ │ ├── transform_scan.h │ │ │ │ ├── uninitialized_copy.h │ │ │ │ ├── uninitialized_fill.h │ │ │ │ ├── unique.h │ │ │ │ ├── unique.inl │ │ │ │ ├── unique_by_key.h │ │ │ │ ├── unique_by_key.inl │ │ │ │ └── vector.inl │ │ │ ├── memory.h │ │ │ └── vector.h │ │ ├── system_error.h │ │ └── tbb │ │ │ ├── detail │ │ │ ├── adjacent_difference.h │ │ │ ├── adl_targets.h │ │ │ ├── assign_value.h │ │ │ ├── binary_search.h │ │ │ ├── copy.h │ │ │ ├── copy.inl │ │ │ ├── copy_if.h │ │ │ ├── copy_if.inl │ │ │ ├── count.h │ │ │ ├── equal.h │ │ │ ├── extrema.h │ │ │ ├── fill.h │ │ │ ├── find.h │ │ │ ├── for_each.h │ │ │ ├── for_each.inl │ │ │ ├── gather.h │ │ │ ├── generate.h │ │ │ ├── get_value.h │ │ │ ├── inner_product.h │ │ │ ├── iter_swap.h │ │ │ ├── logical.h │ │ │ ├── malloc_and_free.h │ │ │ ├── memory.inl │ │ │ ├── merge.h │ │ │ ├── merge.inl │ │ │ ├── mismatch.h │ │ │ ├── partition.h │ │ │ ├── partition.inl │ │ │ ├── reduce.h │ │ │ ├── reduce.inl │ │ │ ├── reduce_by_key.h │ │ │ ├── reduce_by_key.inl │ │ │ ├── reduce_intervals.h │ │ │ ├── remove.h │ │ │ ├── remove.inl │ │ │ ├── replace.h │ │ │ ├── reverse.h │ │ │ ├── scan.h │ │ │ ├── scan.inl │ │ │ ├── scan_by_key.h │ │ │ ├── scatter.h │ │ │ ├── sequence.h │ │ │ ├── set_operations.h │ │ │ ├── sort.h │ │ │ ├── sort.inl │ │ │ ├── swap_ranges.h │ │ │ ├── tabulate.h │ │ │ ├── tag.h │ │ │ ├── temporary_buffer.h │ │ │ ├── transform.h │ │ │ ├── transform_reduce.h │ │ │ ├── transform_scan.h │ │ │ ├── uninitialized_copy.h │ │ │ ├── uninitialized_fill.h │ │ │ ├── unique.h │ │ │ ├── unique.inl │ │ │ ├── unique_by_key.h │ │ │ ├── unique_by_key.inl │ │ │ └── vector.inl │ │ │ ├── memory.h │ │ │ └── vector.h │ ├── system_error.h │ ├── tabulate.h │ ├── transform.h │ ├── transform_reduce.h │ ├── transform_scan.h │ ├── tuple.h │ ├── uninitialized_copy.h │ ├── uninitialized_fill.h │ ├── unique.h │ └── version.h └── time_invocation_cuda.hpp └── more_points ├── README.md ├── SConstruct ├── exercise.cu ├── performance.cu ├── site_scons └── site_tools │ └── nvcc.py ├── spoilers.cu ├── thrust ├── adjacent_difference.h ├── advance.h ├── binary_search.h ├── copy.h ├── count.h ├── detail │ ├── adjacent_difference.inl │ ├── advance.inl │ ├── allocator │ │ ├── allocator_traits.h │ │ ├── allocator_traits.inl │ │ ├── copy_construct_range.h │ │ ├── copy_construct_range.inl │ │ ├── default_construct_range.h │ │ ├── default_construct_range.inl │ │ ├── destroy_range.h │ │ ├── destroy_range.inl │ │ ├── fill_construct_range.h │ │ ├── fill_construct_range.inl │ │ ├── malloc_allocator.h │ │ ├── malloc_allocator.inl │ │ ├── no_throw_allocator.h │ │ ├── tagged_allocator.h │ │ ├── tagged_allocator.inl │ │ ├── temporary_allocator.h │ │ └── temporary_allocator.inl │ ├── binary_search.inl │ ├── config.h │ ├── config │ │ ├── compiler.h │ │ ├── compiler_fence.h │ │ ├── config.h │ │ ├── debug.h │ │ ├── device_system.h │ │ ├── forceinline.h │ │ ├── hd_warning_disable.h │ │ ├── host_device.h │ │ ├── host_system.h │ │ └── simple_defines.h │ ├── contiguous_storage.h │ ├── contiguous_storage.inl │ ├── copy.h │ ├── copy.inl │ ├── copy_if.h │ ├── copy_if.inl │ ├── count.inl │ ├── cstdint.h │ ├── device_delete.inl │ ├── device_free.inl │ ├── device_malloc.inl │ ├── device_new.inl │ ├── device_ptr.inl │ ├── device_reference.inl │ ├── device_vector.inl │ ├── dispatch │ │ └── is_trivial_copy.h │ ├── dispatchable.h │ ├── distance.inl │ ├── equal.inl │ ├── extrema.inl │ ├── fill.inl │ ├── find.inl │ ├── for_each.inl │ ├── function.h │ ├── functional.inl │ ├── functional │ │ ├── actor.h │ │ ├── actor.inl │ │ ├── argument.h │ │ ├── composite.h │ │ ├── operators.h │ │ ├── operators │ │ │ ├── arithmetic_operators.h │ │ │ ├── assignment_operator.h │ │ │ ├── bitwise_operators.h │ │ │ ├── compound_assignment_operators.h │ │ │ ├── logical_operators.h │ │ │ ├── operator_adaptors.h │ │ │ └── relational_operators.h │ │ ├── placeholder.h │ │ └── value.h │ ├── gather.inl │ ├── generate.inl │ ├── host_vector.inl │ ├── inner_product.inl │ ├── integer_traits.h │ ├── internal_functional.h │ ├── logical.inl │ ├── malloc_and_free.h │ ├── merge.inl │ ├── minmax.h │ ├── mismatch.inl │ ├── mpl │ │ └── math.h │ ├── numeric_traits.h │ ├── overlapped_copy.h │ ├── pair.inl │ ├── partition.inl │ ├── pointer.h │ ├── pointer.inl │ ├── range │ │ └── tail_flags.h │ ├── raw_pointer_cast.h │ ├── raw_reference_cast.h │ ├── raw_reference_cast.inl │ ├── reduce.inl │ ├── reference.h │ ├── reference.inl │ ├── reference_forward_declaration.h │ ├── remove.inl │ ├── replace.inl │ ├── reverse.inl │ ├── scan.inl │ ├── scatter.inl │ ├── sequence.inl │ ├── set_operations.inl │ ├── sort.inl │ ├── static_assert.h │ ├── swap.h │ ├── swap.inl │ ├── swap_ranges.inl │ ├── tabulate.inl │ ├── temporary_array.h │ ├── temporary_array.inl │ ├── temporary_buffer.h │ ├── transform.inl │ ├── transform_reduce.inl │ ├── transform_scan.inl │ ├── trivial_sequence.h │ ├── tuple.inl │ ├── tuple_meta_transform.h │ ├── tuple_transform.h │ ├── type_traits.h │ ├── type_traits │ │ ├── algorithm │ │ │ └── intermediate_type_from_function_and_iterators.h │ │ ├── function_traits.h │ │ ├── has_member_function.h │ │ ├── has_nested_type.h │ │ ├── has_trivial_assign.h │ │ ├── is_call_possible.h │ │ ├── is_metafunction_defined.h │ │ ├── iterator │ │ │ ├── is_discard_iterator.h │ │ │ └── is_output_iterator.h │ │ ├── minimum_type.h │ │ ├── pointer_traits.h │ │ └── result_of.h │ ├── uninitialized_copy.inl │ ├── uninitialized_fill.inl │ ├── unique.inl │ ├── use_default.h │ ├── util │ │ ├── align.h │ │ └── blocking.h │ ├── vector_base.h │ └── vector_base.inl ├── device_allocator.h ├── device_delete.h ├── device_free.h ├── device_malloc.h ├── device_malloc_allocator.h ├── device_new.h ├── device_new_allocator.h ├── device_ptr.h ├── device_reference.h ├── device_vector.h ├── distance.h ├── equal.h ├── extrema.h ├── fill.h ├── find.h ├── for_each.h ├── functional.h ├── gather.h ├── generate.h ├── host_vector.h ├── inner_product.h ├── iterator │ ├── constant_iterator.h │ ├── counting_iterator.h │ ├── detail │ │ ├── any_assign.h │ │ ├── any_system_tag.h │ │ ├── constant_iterator_base.h │ │ ├── counting_iterator.inl │ │ ├── device_system_tag.h │ │ ├── discard_iterator_base.h │ │ ├── distance_from_result.h │ │ ├── host_system_tag.h │ │ ├── is_iterator_category.h │ │ ├── is_trivial_iterator.h │ │ ├── iterator_adaptor_base.h │ │ ├── iterator_category_to_system.h │ │ ├── iterator_category_to_traversal.h │ │ ├── iterator_facade_category.h │ │ ├── iterator_traits.inl │ │ ├── iterator_traversal_tags.h │ │ ├── minimum_category.h │ │ ├── minimum_system.h │ │ ├── normal_iterator.h │ │ ├── permutation_iterator_base.h │ │ ├── retag.h │ │ ├── reverse_iterator.inl │ │ ├── reverse_iterator_base.h │ │ ├── tagged_iterator.h │ │ ├── transform_iterator.inl │ │ ├── tuple_of_iterator_references.h │ │ ├── universal_categories.h │ │ ├── zip_iterator.inl │ │ └── zip_iterator_base.h │ ├── discard_iterator.h │ ├── iterator_adaptor.h │ ├── iterator_categories.h │ ├── iterator_facade.h │ ├── iterator_traits.h │ ├── permutation_iterator.h │ ├── retag.h │ ├── reverse_iterator.h │ ├── transform_iterator.h │ └── zip_iterator.h ├── logical.h ├── memory.h ├── merge.h ├── mismatch.h ├── pair.h ├── partition.h ├── random.h ├── random │ ├── detail │ │ ├── discard_block_engine.inl │ │ ├── linear_congruential_engine.inl │ │ ├── linear_congruential_engine_discard.h │ │ ├── linear_feedback_shift_engine.inl │ │ ├── linear_feedback_shift_engine_wordmask.h │ │ ├── mod.h │ │ ├── normal_distribution.inl │ │ ├── normal_distribution_base.h │ │ ├── random_core_access.h │ │ ├── subtract_with_carry_engine.inl │ │ ├── uniform_int_distribution.inl │ │ ├── uniform_real_distribution.inl │ │ ├── xor_combine_engine.inl │ │ └── xor_combine_engine_max.h │ ├── discard_block_engine.h │ ├── linear_congruential_engine.h │ ├── linear_feedback_shift_engine.h │ ├── normal_distribution.h │ ├── subtract_with_carry_engine.h │ ├── uniform_int_distribution.h │ ├── uniform_real_distribution.h │ └── xor_combine_engine.h ├── reduce.h ├── remove.h ├── replace.h ├── reverse.h ├── scan.h ├── scatter.h ├── sequence.h ├── set_operations.h ├── sort.h ├── swap.h ├── system │ ├── cpp │ │ ├── detail │ │ │ ├── adjacent_difference.h │ │ │ ├── adl_targets.h │ │ │ ├── assign_value.h │ │ │ ├── binary_search.h │ │ │ ├── copy.h │ │ │ ├── copy_if.h │ │ │ ├── count.h │ │ │ ├── dispatch │ │ │ │ └── sort.h │ │ │ ├── equal.h │ │ │ ├── extrema.h │ │ │ ├── fill.h │ │ │ ├── find.h │ │ │ ├── for_each.h │ │ │ ├── gather.h │ │ │ ├── generate.h │ │ │ ├── get_value.h │ │ │ ├── inner_product.h │ │ │ ├── iter_swap.h │ │ │ ├── logical.h │ │ │ ├── malloc_and_free.h │ │ │ ├── memory.inl │ │ │ ├── merge.h │ │ │ ├── mismatch.h │ │ │ ├── partition.h │ │ │ ├── reduce.h │ │ │ ├── reduce_by_key.h │ │ │ ├── remove.h │ │ │ ├── replace.h │ │ │ ├── reverse.h │ │ │ ├── scan.h │ │ │ ├── scan_by_key.h │ │ │ ├── scatter.h │ │ │ ├── sequence.h │ │ │ ├── set_operations.h │ │ │ ├── sort.h │ │ │ ├── swap_ranges.h │ │ │ ├── tabulate.h │ │ │ ├── tag.h │ │ │ ├── temporary_buffer.h │ │ │ ├── transform.h │ │ │ ├── transform_reduce.h │ │ │ ├── transform_scan.h │ │ │ ├── uninitialized_copy.h │ │ │ ├── uninitialized_fill.h │ │ │ ├── unique.h │ │ │ ├── unique_by_key.h │ │ │ └── vector.inl │ │ ├── memory.h │ │ └── vector.h │ ├── cuda │ │ ├── detail │ │ │ ├── adjacent_difference.h │ │ │ ├── adjacent_difference.inl │ │ │ ├── adl_targets.h │ │ │ ├── assign_value.h │ │ │ ├── binary_search.h │ │ │ ├── block │ │ │ │ ├── copy.h │ │ │ │ ├── exclusive_scan.h │ │ │ │ ├── inclusive_scan.h │ │ │ │ ├── merge.h │ │ │ │ ├── merge.inl │ │ │ │ ├── merging_sort.h │ │ │ │ ├── odd_even_sort.h │ │ │ │ └── reduce.h │ │ │ ├── copy.h │ │ │ ├── copy.inl │ │ │ ├── copy_cross_system.h │ │ │ ├── copy_cross_system.inl │ │ │ ├── copy_device_to_device.h │ │ │ ├── copy_device_to_device.inl │ │ │ ├── copy_if.h │ │ │ ├── copy_if.inl │ │ │ ├── count.h │ │ │ ├── cuda_launch_config.h │ │ │ ├── default_decomposition.h │ │ │ ├── default_decomposition.inl │ │ │ ├── detail │ │ │ │ ├── alignment.h │ │ │ │ ├── b40c │ │ │ │ │ ├── kernel_utils.h │ │ │ │ │ ├── radixsort_api.h │ │ │ │ │ ├── radixsort_kernel_common.h │ │ │ │ │ ├── radixsort_key_conversion.h │ │ │ │ │ ├── radixsort_reduction_kernel.h │ │ │ │ │ ├── radixsort_scanscatter_kernel.h │ │ │ │ │ ├── radixsort_spine_kernel.h │ │ │ │ │ └── vector_types.h │ │ │ │ ├── balanced_path.h │ │ │ │ ├── cached_temporary_allocator.h │ │ │ │ ├── fast_scan.h │ │ │ │ ├── fast_scan.inl │ │ │ │ ├── launch_calculator.h │ │ │ │ ├── launch_calculator.inl │ │ │ │ ├── launch_closure.h │ │ │ │ ├── launch_closure.inl │ │ │ │ ├── set_operation.h │ │ │ │ ├── set_operation.inl │ │ │ │ ├── stable_merge_sort.h │ │ │ │ ├── stable_merge_sort.inl │ │ │ │ ├── stable_primitive_sort.h │ │ │ │ ├── stable_primitive_sort.inl │ │ │ │ ├── stable_radix_sort.h │ │ │ │ ├── stable_radix_sort.inl │ │ │ │ ├── stable_sort_by_count.h │ │ │ │ ├── stable_sort_by_count.inl │ │ │ │ └── uninitialized.h │ │ │ ├── equal.h │ │ │ ├── error.inl │ │ │ ├── extern_shared_ptr.h │ │ │ ├── extrema.h │ │ │ ├── fill.h │ │ │ ├── fill.inl │ │ │ ├── find.h │ │ │ ├── for_each.h │ │ │ ├── for_each.inl │ │ │ ├── gather.h │ │ │ ├── generate.h │ │ │ ├── get_value.h │ │ │ ├── guarded_cuda_runtime_api.h │ │ │ ├── inner_product.h │ │ │ ├── iter_swap.h │ │ │ ├── logical.h │ │ │ ├── malloc_and_free.h │ │ │ ├── memory.inl │ │ │ ├── merge.h │ │ │ ├── merge.inl │ │ │ ├── mismatch.h │ │ │ ├── partition.h │ │ │ ├── reduce.h │ │ │ ├── reduce.inl │ │ │ ├── reduce_by_key.h │ │ │ ├── reduce_by_key.inl │ │ │ ├── reduce_intervals.h │ │ │ ├── reduce_intervals.inl │ │ │ ├── remove.h │ │ │ ├── replace.h │ │ │ ├── reverse.h │ │ │ ├── runtime_introspection.h │ │ │ ├── runtime_introspection.inl │ │ │ ├── scan.h │ │ │ ├── scan.inl │ │ │ ├── scan_by_key.h │ │ │ ├── scatter.h │ │ │ ├── sequence.h │ │ │ ├── set_difference.inl │ │ │ ├── set_intersection.inl │ │ │ ├── set_operations.h │ │ │ ├── set_symmetric_difference.inl │ │ │ ├── set_union.inl │ │ │ ├── sort.h │ │ │ ├── sort.inl │ │ │ ├── swap_ranges.h │ │ │ ├── synchronize.h │ │ │ ├── synchronize.inl │ │ │ ├── tabulate.h │ │ │ ├── tag.h │ │ │ ├── temporary_buffer.h │ │ │ ├── temporary_indirect_permutation.h │ │ │ ├── transform.h │ │ │ ├── transform_reduce.h │ │ │ ├── transform_scan.h │ │ │ ├── trivial_copy.h │ │ │ ├── trivial_copy.inl │ │ │ ├── uninitialized_copy.h │ │ │ ├── uninitialized_fill.h │ │ │ ├── unique.h │ │ │ ├── unique_by_key.h │ │ │ └── vector.inl │ │ ├── error.h │ │ ├── experimental │ │ │ └── pinned_allocator.h │ │ ├── memory.h │ │ └── vector.h │ ├── detail │ │ ├── adl │ │ │ ├── adjacent_difference.h │ │ │ ├── assign_value.h │ │ │ ├── binary_search.h │ │ │ ├── copy.h │ │ │ ├── copy_if.h │ │ │ ├── count.h │ │ │ ├── equal.h │ │ │ ├── extrema.h │ │ │ ├── fill.h │ │ │ ├── find.h │ │ │ ├── for_each.h │ │ │ ├── gather.h │ │ │ ├── generate.h │ │ │ ├── get_value.h │ │ │ ├── inner_product.h │ │ │ ├── iter_swap.h │ │ │ ├── logical.h │ │ │ ├── malloc_and_free.h │ │ │ ├── merge.h │ │ │ ├── mismatch.h │ │ │ ├── partition.h │ │ │ ├── reduce.h │ │ │ ├── reduce_by_key.h │ │ │ ├── remove.h │ │ │ ├── replace.h │ │ │ ├── reverse.h │ │ │ ├── scan.h │ │ │ ├── scan_by_key.h │ │ │ ├── scatter.h │ │ │ ├── sequence.h │ │ │ ├── set_operations.h │ │ │ ├── sort.h │ │ │ ├── swap_ranges.h │ │ │ ├── tabulate.h │ │ │ ├── temporary_buffer.h │ │ │ ├── transform.h │ │ │ ├── transform_reduce.h │ │ │ ├── transform_scan.h │ │ │ ├── uninitialized_copy.h │ │ │ ├── uninitialized_fill.h │ │ │ ├── unique.h │ │ │ └── unique_by_key.h │ │ ├── bad_alloc.h │ │ ├── errno.h │ │ ├── error_category.inl │ │ ├── error_code.inl │ │ ├── error_condition.inl │ │ ├── generic │ │ │ ├── adjacent_difference.h │ │ │ ├── adjacent_difference.inl │ │ │ ├── advance.h │ │ │ ├── advance.inl │ │ │ ├── binary_search.h │ │ │ ├── binary_search.inl │ │ │ ├── copy.h │ │ │ ├── copy.inl │ │ │ ├── copy_if.h │ │ │ ├── copy_if.inl │ │ │ ├── count.h │ │ │ ├── count.inl │ │ │ ├── distance.h │ │ │ ├── distance.inl │ │ │ ├── equal.h │ │ │ ├── equal.inl │ │ │ ├── extrema.h │ │ │ ├── extrema.inl │ │ │ ├── fill.h │ │ │ ├── find.h │ │ │ ├── find.inl │ │ │ ├── for_each.h │ │ │ ├── gather.h │ │ │ ├── gather.inl │ │ │ ├── generate.h │ │ │ ├── generate.inl │ │ │ ├── inner_product.h │ │ │ ├── inner_product.inl │ │ │ ├── logical.h │ │ │ ├── memory.h │ │ │ ├── memory.inl │ │ │ ├── merge.h │ │ │ ├── merge.inl │ │ │ ├── mismatch.h │ │ │ ├── mismatch.inl │ │ │ ├── partition.h │ │ │ ├── partition.inl │ │ │ ├── reduce.h │ │ │ ├── reduce.inl │ │ │ ├── reduce_by_key.h │ │ │ ├── reduce_by_key.inl │ │ │ ├── remove.h │ │ │ ├── remove.inl │ │ │ ├── replace.h │ │ │ ├── replace.inl │ │ │ ├── reverse.h │ │ │ ├── reverse.inl │ │ │ ├── scalar │ │ │ │ ├── binary_search.h │ │ │ │ └── binary_search.inl │ │ │ ├── scan.h │ │ │ ├── scan.inl │ │ │ ├── scan_by_key.h │ │ │ ├── scan_by_key.inl │ │ │ ├── scatter.h │ │ │ ├── scatter.inl │ │ │ ├── select_system.h │ │ │ ├── sequence.h │ │ │ ├── sequence.inl │ │ │ ├── set_operations.h │ │ │ ├── set_operations.inl │ │ │ ├── sort.h │ │ │ ├── sort.inl │ │ │ ├── swap_ranges.h │ │ │ ├── swap_ranges.inl │ │ │ ├── tabulate.h │ │ │ ├── tabulate.inl │ │ │ ├── tag.h │ │ │ ├── temporary_buffer.h │ │ │ ├── temporary_buffer.inl │ │ │ ├── transform.h │ │ │ ├── transform.inl │ │ │ ├── transform_reduce.h │ │ │ ├── transform_reduce.inl │ │ │ ├── transform_scan.h │ │ │ ├── transform_scan.inl │ │ │ ├── type_traits.h │ │ │ ├── uninitialized_copy.h │ │ │ ├── uninitialized_copy.inl │ │ │ ├── uninitialized_fill.h │ │ │ ├── uninitialized_fill.inl │ │ │ ├── unique.h │ │ │ ├── unique.inl │ │ │ ├── unique_by_key.h │ │ │ └── unique_by_key.inl │ │ ├── internal │ │ │ ├── decompose.h │ │ │ └── scalar │ │ │ │ ├── adjacent_difference.h │ │ │ │ ├── binary_search.h │ │ │ │ ├── copy.h │ │ │ │ ├── copy.inl │ │ │ │ ├── copy_backward.h │ │ │ │ ├── copy_if.h │ │ │ │ ├── extrema.h │ │ │ │ ├── find.h │ │ │ │ ├── for_each.h │ │ │ │ ├── general_copy.h │ │ │ │ ├── insertion_sort.h │ │ │ │ ├── merge.h │ │ │ │ ├── merge.inl │ │ │ │ ├── partition.h │ │ │ │ ├── reduce.h │ │ │ │ ├── reduce_by_key.h │ │ │ │ ├── remove.h │ │ │ │ ├── scan.h │ │ │ │ ├── scan_by_key.h │ │ │ │ ├── set_operations.h │ │ │ │ ├── sort.h │ │ │ │ ├── sort.inl │ │ │ │ ├── stable_merge_sort.h │ │ │ │ ├── stable_merge_sort.inl │ │ │ │ ├── stable_primitive_sort.h │ │ │ │ ├── stable_primitive_sort.inl │ │ │ │ ├── stable_radix_sort.h │ │ │ │ ├── stable_radix_sort.inl │ │ │ │ ├── trivial_copy.h │ │ │ │ ├── unique.h │ │ │ │ └── unique_by_key.h │ │ └── system_error.inl │ ├── error_code.h │ ├── omp │ │ ├── detail │ │ │ ├── adjacent_difference.h │ │ │ ├── adl_targets.h │ │ │ ├── assign_value.h │ │ │ ├── binary_search.h │ │ │ ├── copy.h │ │ │ ├── copy.inl │ │ │ ├── copy_if.h │ │ │ ├── copy_if.inl │ │ │ ├── count.h │ │ │ ├── default_decomposition.h │ │ │ ├── default_decomposition.inl │ │ │ ├── equal.h │ │ │ ├── extrema.h │ │ │ ├── fill.h │ │ │ ├── find.h │ │ │ ├── for_each.h │ │ │ ├── for_each.inl │ │ │ ├── gather.h │ │ │ ├── generate.h │ │ │ ├── get_value.h │ │ │ ├── inner_product.h │ │ │ ├── iter_swap.h │ │ │ ├── logical.h │ │ │ ├── malloc_and_free.h │ │ │ ├── memory.inl │ │ │ ├── merge.h │ │ │ ├── mismatch.h │ │ │ ├── partition.h │ │ │ ├── partition.inl │ │ │ ├── reduce.h │ │ │ ├── reduce.inl │ │ │ ├── reduce_by_key.h │ │ │ ├── reduce_by_key.inl │ │ │ ├── reduce_intervals.h │ │ │ ├── reduce_intervals.inl │ │ │ ├── remove.h │ │ │ ├── remove.inl │ │ │ ├── replace.h │ │ │ ├── reverse.h │ │ │ ├── scan.h │ │ │ ├── scan_by_key.h │ │ │ ├── scatter.h │ │ │ ├── sequence.h │ │ │ ├── set_operations.h │ │ │ ├── sort.h │ │ │ ├── sort.inl │ │ │ ├── swap_ranges.h │ │ │ ├── tabulate.h │ │ │ ├── tag.h │ │ │ ├── temporary_buffer.h │ │ │ ├── transform.h │ │ │ ├── transform_reduce.h │ │ │ ├── transform_scan.h │ │ │ ├── uninitialized_copy.h │ │ │ ├── uninitialized_fill.h │ │ │ ├── unique.h │ │ │ ├── unique.inl │ │ │ ├── unique_by_key.h │ │ │ ├── unique_by_key.inl │ │ │ └── vector.inl │ │ ├── memory.h │ │ └── vector.h │ ├── system_error.h │ └── tbb │ │ ├── detail │ │ ├── adjacent_difference.h │ │ ├── adl_targets.h │ │ ├── assign_value.h │ │ ├── binary_search.h │ │ ├── copy.h │ │ ├── copy.inl │ │ ├── copy_if.h │ │ ├── copy_if.inl │ │ ├── count.h │ │ ├── equal.h │ │ ├── extrema.h │ │ ├── fill.h │ │ ├── find.h │ │ ├── for_each.h │ │ ├── for_each.inl │ │ ├── gather.h │ │ ├── generate.h │ │ ├── get_value.h │ │ ├── inner_product.h │ │ ├── iter_swap.h │ │ ├── logical.h │ │ ├── malloc_and_free.h │ │ ├── memory.inl │ │ ├── merge.h │ │ ├── merge.inl │ │ ├── mismatch.h │ │ ├── partition.h │ │ ├── partition.inl │ │ ├── reduce.h │ │ ├── reduce.inl │ │ ├── reduce_by_key.h │ │ ├── reduce_by_key.inl │ │ ├── reduce_intervals.h │ │ ├── remove.h │ │ ├── remove.inl │ │ ├── replace.h │ │ ├── reverse.h │ │ ├── scan.h │ │ ├── scan.inl │ │ ├── scan_by_key.h │ │ ├── scatter.h │ │ ├── sequence.h │ │ ├── set_operations.h │ │ ├── sort.h │ │ ├── sort.inl │ │ ├── swap_ranges.h │ │ ├── tabulate.h │ │ ├── tag.h │ │ ├── temporary_buffer.h │ │ ├── transform.h │ │ ├── transform_reduce.h │ │ ├── transform_scan.h │ │ ├── uninitialized_copy.h │ │ ├── uninitialized_fill.h │ │ ├── unique.h │ │ ├── unique.inl │ │ ├── unique_by_key.h │ │ ├── unique_by_key.inl │ │ └── vector.inl │ │ ├── memory.h │ │ └── vector.h ├── system_error.h ├── tabulate.h ├── transform.h ├── transform_reduce.h ├── transform_scan.h ├── tuple.h ├── uninitialized_copy.h ├── uninitialized_fill.h ├── unique.h └── version.h ├── time_invocation_cuda.hpp └── util.h /.gitignore: -------------------------------------------------------------------------------- 1 | # Scons intermediate files 2 | .sconsign.dblite 3 | *.pyc 4 | 5 | # Generated files 6 | *.o 7 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Thrust Workshop 2 | =============== 3 | 4 | Building __parallel programs__ is easy with [Thrust's](http://thrust.github.com) __power tools__ like parallel __maps__, __sorts__, and __reductions__. 5 | 6 | This repository contains two exercises: 7 | 8 | - **fun_with_points** is a beginner-level exercise, in which you will create a set of points on a 2D plane and classify 9 | them into quadrants 10 | - **more_points** is an intermediate/advanced exercse building upon *fun_with_points* to generate a quadtree for points 11 | in a 2D plane 12 | 13 | If you're interested in learning more about Thrust, check out the [quick start guide](https://github.com/thrust/thrust/wiki/Quick-Start-Guide) or browse the [extensive collection of example programs](https://github.com/thrust/thrust/tree/master/examples) to discover the parallelism hidden in everyday computations. 14 | -------------------------------------------------------------------------------- /fun_with_points/thrust/detail/allocator/default_construct_range.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | namespace thrust 22 | { 23 | namespace detail 24 | { 25 | 26 | 27 | template 28 | inline void default_construct_range(Allocator &a, Pointer p, Size n); 29 | 30 | 31 | } // end detail 32 | } // end thrust 33 | 34 | #include 35 | 36 | 37 | -------------------------------------------------------------------------------- /fun_with_points/thrust/detail/allocator/destroy_range.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | namespace thrust 22 | { 23 | namespace detail 24 | { 25 | 26 | template 27 | inline void destroy_range(Allocator &a, Pointer p, Size n); 28 | 29 | } // end detail 30 | } // end thrust 31 | 32 | #include 33 | 34 | -------------------------------------------------------------------------------- /fun_with_points/thrust/detail/config.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | /*! \file config.h 17 | * \brief Defines platform configuration. 18 | */ 19 | 20 | #pragma once 21 | 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/detail/config/debug.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #ifndef THRUST_DEBUG 20 | # ifndef NDEBUG 21 | # if (DEBUG || _DEBUG) 22 | # define THRUST_DEBUG 1 23 | # endif // (DEBUG || _DEBUG) 24 | # endif // NDEBUG 25 | #endif // THRUST_DEBUG 26 | 27 | #if THRUST_DEBUG 28 | # ifndef __THRUST_SYNCHRONOUS 29 | # define __THRUST_SYNCHRONOUS 1 30 | # endif // __THRUST_SYNCHRONOUS 31 | #endif // THRUST_DEBUG 32 | 33 | -------------------------------------------------------------------------------- /fun_with_points/thrust/detail/config/forceinline.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | /*! \file forceinline.h 18 | * \brief Defines __thrust_forceinline__ 19 | */ 20 | 21 | #pragma once 22 | 23 | #include 24 | 25 | #if defined(__CUDACC__) 26 | 27 | #define __thrust_forceinline__ __forceinline__ 28 | 29 | #else 30 | 31 | // TODO add 32 | 33 | #define __thrust_forceinline__ 34 | 35 | #endif 36 | 37 | -------------------------------------------------------------------------------- /fun_with_points/thrust/detail/config/hd_warning_disable.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | /*! \file hd_warning_disable.h 18 | * \brief Defines __thrust_hd_warning_disable__ 19 | */ 20 | 21 | #pragma once 22 | 23 | #include 24 | 25 | #if defined(__CUDACC__) 26 | 27 | #define __thrust_hd_warning_disable__ \ 28 | #pragma hd_warning_disable 29 | #else 30 | 31 | #define __thrust_hd_warning_disable__ 32 | 33 | #endif 34 | 35 | 36 | -------------------------------------------------------------------------------- /fun_with_points/thrust/detail/config/simple_defines.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | /*! \file simple_defines.h 18 | * \brief Primitive macros without dependencies. 19 | */ 20 | 21 | #pragma once 22 | 23 | #define THRUST_UNKNOWN 0 24 | #define THRUST_FALSE 0 25 | #define THRUST_TRUE 1 26 | 27 | #define THRUST_PREVENT_MACRO_SUBSTITUTION 28 | 29 | -------------------------------------------------------------------------------- /fun_with_points/thrust/detail/functional/operators.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | #include 25 | 26 | -------------------------------------------------------------------------------- /fun_with_points/thrust/detail/reference_forward_declaration.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | 22 | namespace thrust 23 | { 24 | 25 | template class reference; 26 | 27 | } // end thrust 28 | 29 | -------------------------------------------------------------------------------- /fun_with_points/thrust/detail/swap.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #pragma once 19 | 20 | #include 21 | 22 | namespace thrust 23 | { 24 | 25 | template 26 | __host__ __device__ 27 | inline void swap(Assignable1 &a, Assignable2 &b) 28 | { 29 | Assignable1 temp = a; 30 | a = b; 31 | b = temp; 32 | } // end swap() 33 | 34 | } // end namespace thrust 35 | 36 | -------------------------------------------------------------------------------- /fun_with_points/thrust/detail/swap.inl: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | #include 20 | #include 21 | 22 | -------------------------------------------------------------------------------- /fun_with_points/thrust/detail/use_default.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | namespace thrust 22 | { 23 | 24 | struct use_default {}; 25 | 26 | } // end thrust 27 | 28 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/count.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/equal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/gather.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/generate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/inner_product.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/logical.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/mismatch.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/replace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/reverse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/scatter.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/sequence.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/swap_ranges.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // cpp has no special swap_ranges 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/tabulate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/temporary_buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special temporary buffer functions 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/transform.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // cpp has no special transform 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/transform_reduce.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/transform_scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/uninitialized_copy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cpp/detail/uninitialized_fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/binary_search.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/count.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/equal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/extrema.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/find.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/gather.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/generate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/inner_product.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/logical.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/mismatch.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/partition.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/remove.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/replace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/reverse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/scan_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/scatter.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/sequence.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/swap_ranges.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // cuda has no special swap_ranges 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/tabulate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/temporary_buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special temporary buffer functions 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/transform.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // cuda has no special transform 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/transform_reduce.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/transform_scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/uninitialized_copy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/uninitialized_fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/unique.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/cuda/detail/unique_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/assign_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits assign_value 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/count.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits count 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/equal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits equal 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits fill 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/gather.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits gather 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/generate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits generate 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/get_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits get_value 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/inner_product.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits inner_product 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/iter_swap.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits iter_swap 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/logical.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits logical 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/malloc_and_free.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits malloc and free 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/merge.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits merge 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/mismatch.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits mismatch 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/replace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/reverse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits reverse 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits scan 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/scan_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/scatter.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/sequence.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits sequence 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/set_operations.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits set_operations 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/swap_ranges.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // omp inherits swap_ranges 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/tabulate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits tabulate 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/temporary_buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special temporary buffer functions 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/transform.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // omp inherits transform 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/transform_reduce.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits transform_reduce 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/transform_scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits transform_scan 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/uninitialized_copy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits uninitialized_copy 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/omp/detail/uninitialized_fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits uninitialized_fill 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/assign_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits assign_value 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/binary_search.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits binary_search 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/count.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits count 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/equal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits equal 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits fill 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/gather.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits gather 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/generate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits generate 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/get_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits get_value 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/inner_product.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits inner_product 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/iter_swap.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits iter_swap 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/logical.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits logical 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/malloc_and_free.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits malloc and free 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/mismatch.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits mismatch 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/replace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/reverse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits reverse 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/scan_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits scan_by_key 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/scatter.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/sequence.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits sequence 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/set_operations.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits set_operations 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/swap_ranges.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // tbb inherits swap_ranges 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/tabulate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits tabulate 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/temporary_buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special temporary buffer functions 22 | 23 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/transform.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // omp inherits transform 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/transform_reduce.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits transform_reduce 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/transform_scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits transform_scan 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/uninitialized_copy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits uninitialized_copy 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /fun_with_points/thrust/system/tbb/detail/uninitialized_fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits uninitialized_fill 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/detail/allocator/default_construct_range.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | namespace thrust 22 | { 23 | namespace detail 24 | { 25 | 26 | 27 | template 28 | inline void default_construct_range(Allocator &a, Pointer p, Size n); 29 | 30 | 31 | } // end detail 32 | } // end thrust 33 | 34 | #include 35 | 36 | 37 | -------------------------------------------------------------------------------- /more_points/thrust/detail/allocator/destroy_range.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | namespace thrust 22 | { 23 | namespace detail 24 | { 25 | 26 | template 27 | inline void destroy_range(Allocator &a, Pointer p, Size n); 28 | 29 | } // end detail 30 | } // end thrust 31 | 32 | #include 33 | 34 | -------------------------------------------------------------------------------- /more_points/thrust/detail/config.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | /*! \file config.h 17 | * \brief Defines platform configuration. 18 | */ 19 | 20 | #pragma once 21 | 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/detail/config/debug.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #ifndef THRUST_DEBUG 20 | # ifndef NDEBUG 21 | # if (DEBUG || _DEBUG) 22 | # define THRUST_DEBUG 1 23 | # endif // (DEBUG || _DEBUG) 24 | # endif // NDEBUG 25 | #endif // THRUST_DEBUG 26 | 27 | #if THRUST_DEBUG 28 | # ifndef __THRUST_SYNCHRONOUS 29 | # define __THRUST_SYNCHRONOUS 1 30 | # endif // __THRUST_SYNCHRONOUS 31 | #endif // THRUST_DEBUG 32 | 33 | -------------------------------------------------------------------------------- /more_points/thrust/detail/config/forceinline.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | /*! \file forceinline.h 18 | * \brief Defines __thrust_forceinline__ 19 | */ 20 | 21 | #pragma once 22 | 23 | #include 24 | 25 | #if defined(__CUDACC__) 26 | 27 | #define __thrust_forceinline__ __forceinline__ 28 | 29 | #else 30 | 31 | // TODO add 32 | 33 | #define __thrust_forceinline__ 34 | 35 | #endif 36 | 37 | -------------------------------------------------------------------------------- /more_points/thrust/detail/config/hd_warning_disable.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | /*! \file hd_warning_disable.h 18 | * \brief Defines __thrust_hd_warning_disable__ 19 | */ 20 | 21 | #pragma once 22 | 23 | #include 24 | 25 | #if defined(__CUDACC__) 26 | 27 | #define __thrust_hd_warning_disable__ \ 28 | #pragma hd_warning_disable 29 | #else 30 | 31 | #define __thrust_hd_warning_disable__ 32 | 33 | #endif 34 | 35 | 36 | -------------------------------------------------------------------------------- /more_points/thrust/detail/config/simple_defines.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | /*! \file simple_defines.h 18 | * \brief Primitive macros without dependencies. 19 | */ 20 | 21 | #pragma once 22 | 23 | #define THRUST_UNKNOWN 0 24 | #define THRUST_FALSE 0 25 | #define THRUST_TRUE 1 26 | 27 | #define THRUST_PREVENT_MACRO_SUBSTITUTION 28 | 29 | -------------------------------------------------------------------------------- /more_points/thrust/detail/reference_forward_declaration.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | 22 | namespace thrust 23 | { 24 | 25 | template class reference; 26 | 27 | } // end thrust 28 | 29 | -------------------------------------------------------------------------------- /more_points/thrust/detail/swap.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #pragma once 19 | 20 | #include 21 | 22 | namespace thrust 23 | { 24 | 25 | template 26 | __host__ __device__ 27 | inline void swap(Assignable1 &a, Assignable2 &b) 28 | { 29 | Assignable1 temp = a; 30 | a = b; 31 | b = temp; 32 | } // end swap() 33 | 34 | } // end namespace thrust 35 | 36 | -------------------------------------------------------------------------------- /more_points/thrust/detail/swap.inl: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | #include 20 | #include 21 | 22 | -------------------------------------------------------------------------------- /more_points/thrust/detail/use_default.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | namespace thrust 22 | { 23 | 24 | struct use_default {}; 25 | 26 | } // end thrust 27 | 28 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/count.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/equal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/gather.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/generate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/inner_product.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/logical.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/mismatch.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/replace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/reverse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/scatter.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/sequence.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/swap_ranges.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // cpp has no special swap_ranges 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/tabulate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/temporary_buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special temporary buffer functions 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/transform.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // cpp has no special transform 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/transform_reduce.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/transform_scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/uninitialized_copy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cpp/detail/uninitialized_fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/binary_search.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/count.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/equal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/extrema.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/find.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/gather.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/generate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/inner_product.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/logical.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/mismatch.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/partition.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/remove.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/replace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/reverse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/scan_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/scatter.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/sequence.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/swap_ranges.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // cuda has no special swap_ranges 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/tabulate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/temporary_buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special temporary buffer functions 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/transform.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // cuda has no special transform 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/transform_reduce.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/transform_scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/uninitialized_copy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/uninitialized_fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/unique.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/cuda/detail/unique_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special version of this algorithm 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/assign_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits assign_value 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/count.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits count 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/equal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits equal 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits fill 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/gather.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits gather 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/generate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits generate 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/get_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits get_value 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/inner_product.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits inner_product 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/iter_swap.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits iter_swap 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/logical.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits logical 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/malloc_and_free.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits malloc and free 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/merge.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits merge 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/mismatch.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits mismatch 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/replace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/reverse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits reverse 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits scan 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/scan_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/scatter.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/sequence.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits sequence 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/set_operations.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits set_operations 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/swap_ranges.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // omp inherits swap_ranges 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/tabulate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits tabulate 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/temporary_buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special temporary buffer functions 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/transform.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // omp inherits transform 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/transform_reduce.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits transform_reduce 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/transform_scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits transform_scan 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/uninitialized_copy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits uninitialized_copy 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/omp/detail/uninitialized_fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits uninitialized_fill 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/assign_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits assign_value 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/binary_search.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits binary_search 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/count.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits count 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/equal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits equal 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits fill 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/gather.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits gather 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/generate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits generate 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/get_value.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits get_value 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/inner_product.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits inner_product 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/iter_swap.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits iter_swap 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/logical.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits logical 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/malloc_and_free.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits malloc and free 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/mismatch.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits mismatch 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/replace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/reverse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits reverse 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/scan_by_key.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits scan_by_key 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/scatter.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits this algorithm 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/sequence.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits sequence 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/set_operations.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits set_operations 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/swap_ranges.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // tbb inherits swap_ranges 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/tabulate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits tabulate 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/temporary_buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system has no special temporary buffer functions 22 | 23 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/transform.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // omp inherits transform 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/transform_reduce.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits transform_reduce 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/transform_scan.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits transform_scan 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/uninitialized_copy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits uninitialized_copy 22 | #include 23 | 24 | -------------------------------------------------------------------------------- /more_points/thrust/system/tbb/detail/uninitialized_fill.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2008-2012 NVIDIA Corporation 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | // this system inherits uninitialized_fill 22 | #include 23 | 24 | --------------------------------------------------------------------------------