chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
cmake_minimum_required(VERSION 3.16...3.27)
|
||||
|
||||
# If you use the example outside of the Rerun SDK you need to specify
|
||||
# where the rerun_c build is to be found by setting the `RERUN_CPP_URL` variable.
|
||||
# This can be done by passing `-DRERUN_CPP_URL=<path to rerun_sdk_cpp zip>` to cmake.
|
||||
if(DEFINED RERUN_REPOSITORY)
|
||||
add_executable(example_stdio main.cpp)
|
||||
rerun_strict_warning_settings(example_stdio)
|
||||
else()
|
||||
project(example_stdio LANGUAGES CXX)
|
||||
|
||||
add_executable(example_stdio main.cpp)
|
||||
|
||||
# Set the path to the rerun_c build.
|
||||
set(RERUN_CPP_URL "https://github.com/rerun-io/rerun/releases/latest/download/rerun_cpp_sdk.zip" CACHE STRING "URL to the rerun_cpp zip.")
|
||||
option(RERUN_FIND_PACKAGE "Whether to use find_package to find a preinstalled rerun package (instead of using FetchContent)." OFF)
|
||||
|
||||
if(RERUN_FIND_PACKAGE)
|
||||
find_package(rerun_sdk REQUIRED)
|
||||
else()
|
||||
# Download the rerun_sdk
|
||||
include(FetchContent)
|
||||
FetchContent_Declare(rerun_sdk URL ${RERUN_CPP_URL})
|
||||
FetchContent_MakeAvailable(rerun_sdk)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Link against rerun_sdk.
|
||||
target_link_libraries(example_stdio PRIVATE rerun_sdk)
|
||||
@@ -0,0 +1,23 @@
|
||||
<!--[metadata]
|
||||
title = "Standard Input/Output example"
|
||||
thumbnail = "https://static.rerun.io/stdio/25c5aba992d4c8b3861386d8d9539a4823dca117/480w.png"
|
||||
thumbnail_dimensions = [480, 298]
|
||||
-->
|
||||
|
||||
|
||||
<picture>
|
||||
<img src="https://static.rerun.io/stdio/25c5aba992d4c8b3861386d8d9539a4823dca117/full.png" alt="">
|
||||
<source media="(max-width: 480px)" srcset="https://static.rerun.io/stdio/25c5aba992d4c8b3861386d8d9539a4823dca117/480w.png">
|
||||
<source media="(max-width: 768px)" srcset="https://static.rerun.io/stdio/25c5aba992d4c8b3861386d8d9539a4823dca117/768w.png">
|
||||
<source media="(max-width: 1024px)" srcset="https://static.rerun.io/stdio/25c5aba992d4c8b3861386d8d9539a4823dca117/1024w.png">
|
||||
<source media="(max-width: 1200px)" srcset="https://static.rerun.io/stdio/25c5aba992d4c8b3861386d8d9539a4823dca117/1200w.png">
|
||||
</picture>
|
||||
|
||||
Demonstrates how to log data to standard output with the Rerun SDK, and then visualize it from standard input with the Rerun Viewer.
|
||||
|
||||
To build it from a checkout of the repository (requires a Rust toolchain):
|
||||
```bash
|
||||
cmake .
|
||||
cmake --build . --target example_stdio
|
||||
echo 'hello from stdin!' | ./examples/cpp/stdio/example_stdio | rerun -
|
||||
```
|
||||
@@ -0,0 +1,17 @@
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
|
||||
#include <rerun.hpp>
|
||||
|
||||
int main() {
|
||||
const auto rec = rerun::RecordingStream("rerun_example_stdio");
|
||||
rec.to_stdout().exit_on_failure();
|
||||
|
||||
std::string input;
|
||||
std::string line;
|
||||
while (std::getline(std::cin, line)) {
|
||||
input += line + '\n';
|
||||
}
|
||||
|
||||
rec.log("stdin", rerun::TextDocument(input));
|
||||
}
|
||||
Reference in New Issue
Block a user