Visualize Time Enabled Data using ArcGIS Qt (C++) and Toolkit
Gela Malek Pour gmalekpour@esri.com Visualize Time Enabled Data using ArcGIS Qt (C++) and ToolkitAbout Esri • We build mapping technology that our customers use to solve the world’s most complex challenges offer solutions to apply location-based analytics to business practices - Visualize and analyze data more effectively - Collaborate and share maps, apps and reports easily • Headquartered in Southern worldPurpose of this talk • Showcase a quick way to create a desktop app to visualize time enabled data • Setup the development environment using Esri templates • Use the ArcGIS toolkit to use already0 码力 | 10 页 | 734.09 KB | 5 月前3Using the Microsoft Graph API to get Office 365 data in your mobile apps
Using the Microsoft Graph API to get Office 365 data in your mobile apps Alex Ziskind Technical Director @digitalix www.nuvious.com Hi, I’m Alex From + 750 Million 50 Million per month Problems0 码力 | 15 页 | 7.00 MB | 1 年前3唐刚 - Use Rust to Develop the Decentralized Open Data Application - RustChinaConf2023
第三届中国 Rust 开发者大会 Use Rust to Develop the Decentralized Open Data Application Mike Tang daogangtang@gmail.com @daogangtang 2023-06-08 ➔ 裁员 ➔ 互联网格局定型 ➔ 平台倒闭,数据丢失 这是一个什么时代? 互联网的终局 创业 -> 种子 dataset, data will increase quickly on any dimension. ➔ Multiple dimensions Dataset Models ➔ What is open data? Build an internet platform, but open its data to everyone. ➔ Why we need open data? The The business of the closed data model has been at the end. A New Proposal: Open Data Application The Road to Open Web ➔ From the user side, it looks like just the traditional Internet app ➔ But everyone0 码力 | 30 页 | 2.53 MB | 1 年前3陈东 - 利用Rust重塑移动应用开发-230618
with code written in other languages, typically C or C++. FFI allows Rust to call functions and use data structures defined in other languages, and vice versa. 利用 Rust 重塑移动应用开发 Photo / image / chart Photo / image / chart RCC_Android 利用 Rust 重塑移动应用开发 - RCC_Andorid is an rust library which is to binding Rust code into Android application. - Use the crate rifgen, flapigen to generate the java interface independent android library RCC_IOS 利用 Rust 重塑移动应用开发 - RCC_IOS is an rust library which is to binding Rust code into IOS application. - Use the crate lipo to generate the staticlib for ios application0 码力 | 22 页 | 2.10 MB | 1 年前3C++高性能并行编程与优化 - 课件 - 17 由浅入深学习 map 容器
second); } • 答案是同属于 C++17 的 structural-binding 语法糖,他和 range-based loop 可以配合着 用。 • for (auto [k, v]: m) { • print(k, v); } • auto [k, v] 这个就是 structural-binding ,我们第三课讲 tuple 时就介绍过了。 • 本来是要再写一行 auto 开恩,允许两个语法糖一起 用, C++ 之父他真的我哭死。 不客气,小彭老师 不客气,小彭老师 map 的遍历:用 C++17 range-based loop 配合 structural- binding • 我们现在遍历一个 map ,然后把他里面所有的 V 都设为 v2 ,要怎么做? • for (auto [k, v]: m) { • v = v2; } • 这样吗?不行! [k 因为只有指针是浅拷贝的,是可以远程修改另一个对象的。 • 这里说的指针,不光是 T * 指针,还包括 T & 引用, iterator 迭代器,他们都是指针的 变体。 • 而 structural-binding 和 range-based loop 语法支持引用,也非常简单: • for (auto &[k, v]: m) { • v = v2; // 引用比指针还方便,自动解引用。此处等价于迭代器版的0 码力 | 90 页 | 8.76 MB | 1 年前3C++高性能并行编程与优化 - 课件 - 08 CUDA 开启的 GPU 编程
vector 对元素的构造。默认情况下他可以有任意多个参数,而 如果没有参数则说明是无参构造函数。 • 因此我们只需要判断是不是有参数,然后是不是传统的 C 语 言类型( plain-old-data ),如果是,则跳过其无参构造,从 而避免在 CPU 上低效的零初始化。 进一步:核函数可以是一个模板函数 • 刚刚说过 CUDA 的优势在于对 C++ 的 完全支持。所以 __global__ 整个地拷贝到 GPU 上! 而不是浅拷贝其起始地址指针。 如何捕获外部变量? • 正确的做法是先获取 arr.data() 的值到 arr_data 变量,然后用 [=] 按值捕获 arr_data ,函数体里面也通过 arr_data 来访问 arr 。 • 为什么这样?因为 data() 返回一个起始地 址的原始指针,而原始指针是浅拷贝的, 所以可以拷贝到 GPU 上,让他访问。这 个元素……之所以他搞这么复杂,其实是因为 thrust 需要兼容一些“老年 程序”爱用的 C++03 ,不然早该换成 C++11 的 std::tuple 和 C++17 的 structual-binding 语法了……反正我是不喜欢用他的迭代器这一套,简单的问题反而复杂化。 • 怪不得王鑫磊在 ZPC 里要自己造轮子哦,虽然是 C++03 ,总感觉是几百年前的编程语言。 • 现在很多“老年”教材对0 码力 | 142 页 | 13.52 MB | 1 年前3C++高性能并行编程与优化 - 课件 - 14 C++ 标准库系列课 - 你所不知道的 set 容器
• iterator first; • bool second; • }; 使用 C++17 的结构化绑定来拆解 pair • C++17 提供了结构化绑定 (structual binding) 的语法, 可以取出一个 POD 结构体 的所有成员, pair 也不例外 。 • auto [ok, it] = b.insert(3); • 等价于 • auto tmp = b.insert(3);0 码力 | 83 页 | 10.23 MB | 1 年前3Making Libraries Consumable for Non-C++ Developers
isn’t being declared? struct data_t { int a; int b; }; /* Get data from device ‘dev’. */ data_t get_data_from(size_t dev); What defines how dev is passed or data_t is returned? Calling conventions… being used here? push ... call data_t get_data_from(unsigned int) add esp, 4 add eax, edx Caller cleanup (cdecl) push ... call data_t get_data_from(unsigned int) add eax, edx cleanup (stdcall) data_t d = get_data_from(dev); return d.a + d.b;What isn’t being declared? struct data_t { int a; int b; }; /* Get data from device ‘dev’. */ data_t get_data_from(size_t dev);0 码力 | 29 页 | 1.21 MB | 5 月前3C++20: An (Almost) Complete Overview
Why ranges? Provide nicer and easier to read syntax: vector data { 11, 22, 33 }; sort(begin(data), end(data)); ranges::sort(data); Eliminate mismatching begin/end iterators Allows “range adaptors” chained using pipes |13 Ranges Example of chaining views: vector data { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; auto result { data | views::filter([](const auto& value) { return value % 2 == 0; })/* Initializers Designated initialization of aggregates E.g.: struct Data { int anInt { 0 }; std::string aString; }; Data d { .aString = "Hello" };48 Spaceship Operator <=> Official name:0 码力 | 85 页 | 512.18 KB | 5 月前3C++20's
int for each? While you could just represent these values with unsigned ints or the underlying data, these new calendrical types also provide valuable abstraction. To use weekdays, months, weekday_indexeds eapSecondInformation • For pre-2018 leap seconds, we maintain a static constexpr table to pull data from. • Note that we don’t currently have a way to detect upcoming leap seconds on older Windows 3:00 UTC America/ New York43 tzdb • This is a type that stores data from the time zone database. • Specifically, it contains data members: • string version; • vector0 码力 | 55 页 | 8.67 MB | 5 月前3
共 40 条
- 1
- 2
- 3
- 4