加载中...
正在搜索...
无匹配项
box.hpp
前往此文件的文档。
1/*
2 * 版权所有 (c) 2022-2024, NVIDIA CORPORATION.
3 *
4 * 根据 Apache 许可证 2.0 版(“许可证”)获得许可;
5 * 除非符合许可证的规定,否则您不得使用此文件。
6 * 您可以在以下网址获得许可证的副本
7 *
8 * https://apache.ac.cn/licenses/LICENSE-2.0
9 *
10 * 除非适用法律要求或书面同意,软件
11 * 根据许可证分发是基于“按原样”的基础,
12 * 不附带任何明示或默示的保证或条件。
13 * 请参阅许可证了解管理权限和
14 * 限制的特定语言。
15 */
16
17#pragma once
18
20
21namespace cuspatial {
22
27
34template <typename T, typename Vertex = cuspatial::vec_2d<T>>
35class alignas(sizeof(Vertex)) box {
36 public
37 using value_type = T;
38 Vertex v1;
39 Vertex v2;
40
41 private
45 friend std::ostream& operator<<(std::ostream& os, cuspatial::box<T, Vertex> const& b)
46 {
47 return os << "{" << b.v1 << ", " << b.v2 << "}";
48 }
49};
50
51// 推导指南,启用 CTAD
52template <typename T>
53box(vec_2d<T> a, vec_2d<T> b) -> box<T, vec_2d<T>>;
54
58
59} // 命名空间 cuspatial
一种通用的轴对齐框类型。
定义 box.hpp:35
friend std::ostream & operator<<(std::ostream &os, cuspatial::box< T, Vertex > const &b)
用于 box<T> 的输出流运算符,用于人类可读的格式。
定义 box.hpp:45