iwyu: //aos/util/...

The full include-list for aos/util/threaded_consumer.h:
<functional>                    // for function
<optional>                      // for optional
<thread>                        // for thread
"aos/condition.h"               // for Condition
"aos/containers/ring_buffer.h"  // for RingBuffer
"aos/mutex/mutex.h"             // for MutexLocker, Mutex
"aos/realtime.h"                // for SetCurrentThreadRealtimePriority, UnsetCurrentThreadRealtimePriority
"glog/logging.h"                // for CHECK, COMPACT_GOOGLE_LOG_FATAL, LogMessageFatal

The full include-list for aos/util/threaded_consumer_test.cc:
"aos/util/threaded_consumer.h"
<atomic>            // for atomic, __atomic_base
<chrono>            // for milliseconds
<initializer_list>  // for initializer_list
<memory>            // for allocator
<ostream>           // for char_traits, basic_ostream::operator<<, operator<<, basic_ostream
"gtest/gtest.h"     // for Test, AssertionResult, Message, TestPartResult, TestInfo, EXPECT_TRUE, TEST, EXPECT_EQ, EXPECT_FALSE

The full include-list for aos/util/log_to_mcap.cc:
<algorithm>                             // for copy
<memory>                                // for unique_ptr, allocator, make_unique
<optional>                              // for optional
<ostream>                               // for operator<<, basic_ostream
<set>                                   // for set, _Rb_tree_const_iterator
<string>                                // for char_traits, operator<<, operator==, string, basic_string
<vector>                                // for vector
"aos/configuration.h"                   // for GetNode, Configuration, AddChannelToConfiguration, MultiNode, Node
"aos/events/event_loop.h"               // for EventLoop
"aos/events/logging/log_reader.h"       // for LogReader
"aos/events/logging/logfile_sorting.h"  // for LogFile, FindLogs, LoggerNodes, SortParts
"aos/events/simulated_event_loop.h"     // for SimulatedEventLoopFactory, NodeEventLoopFactory
"aos/flatbuffers.h"                     // for FlatbufferDetachedBuffer, FlatbufferSpan
"aos/init.h"                            // for InitGoogle
"aos/util/clock_publisher.h"            // for ClockPublisher
"aos/util/clock_timepoints_schema.h"    // for ClockTimepointsSchema
"aos/util/mcap_logger.h"                // for McapLogger
"flatbuffers/reflection_generated.h"    // for Schema
"gflags/gflags.h"                       // for DEFINE_bool, DEFINE_string
"glog/logging.h"                        // for CHECK, COMPACT_GOOGLE_LOG_FATAL, Check_LTImpl, LogMessageFatal, LOG, LogMessage, CHECK_LT, COMPACT_GOOGLE_LOG_ERROR, COMPACT_GOOGLE_LOG_INFO

The full include-list for aos/util/threaded_queue_test.cc:
"aos/util/threaded_queue.h"
<atomic>         // for atomic, __atomic_base
<memory>         // for allocator
<utility>        // for move
"gtest/gtest.h"  // for Test, Message, TestPartResult, ASSERT_EQ, CmpHelperGE, TestInfo, CmpHelperLT, TEST, ASSERT_GE, ASSERT_LT

The full include-list for aos/util/mcap_logger.h:
<stddef.h>                       // for size_t
<stdint.h>                       // for uint64_t, uint16_t, uint32_t, uint8_t
<iosfwd>                         // for ofstream, ostream, stringstream
<map>                            // for map
<memory>                         // for unique_ptr
<optional>                       // for optional
<string>                         // for string
<string_view>                    // for string_view
<utility>                        // for pair
<vector>                         // for vector
"aos/configuration_generated.h"  // for Channel, Configuration, Node
"aos/events/context.h"           // for Context
"aos/events/event_loop.h"        // for EventLoop, RawFetcher
"aos/fast_string_builder.h"      // for FastStringBuilder
"aos/flatbuffer_utils.h"         // for FlatbufferType
"aos/flatbuffers.h"              // for FlatbufferDetachedBuffer
"aos/time/time.h"                // for monotonic_clock
"nlohmann/json_fwd.hpp"          // for json

The full include-list for aos/util/mcap_logger_test.cc:
"aos/util/mcap_logger.h"
"flatbuffers/reflection_generated.h"  // for Schema
"gtest/gtest.h"                       // for Test, TestInfo, EXPECT_EQ, Message, TEST, TestPartResult
"nlohmann/json.hpp"                   // for basic_json

The full include-list for aos/util/trapezoid_profile.h:
<chrono>        // for nanoseconds
"Eigen/Core"    // for StorageOptions, outer_stride_at_compile_time<>::ret, inner_stride_at_compile_time<>::ret, traits<>::Flags, DirectionType, DenseBase<>::ColsAtCompileTime, AccessorLevels, DenseBase<>::RowsAtCompileTime, is_arithmetic<>::value, DenseBase<>::IsRowMajor, traits<>::ColsAtCompileTime, traits<>::RowsAtCompileTime, TraversalType, AlignmentType, accessors_level<>::value, traits<>::MaxColsAtCompileTime, traits<>::MaxRowsAtCompileTime, GenericNumTraits<>::IsComplex, is_const<>::value, is_same<>::value, DenseBase<>::SizeAtCompileTime, UnrollingType, unpacket_traits<>::alignment, Matrix, ComparisonName, DenseBase<>::MaxColsAtCompileTime, DenseBase<>::MaxRowsAtCompileTime, DenseBase<>::MaxSizeAtCompileTime, packet_traits<>::Vectorizable, DenseBase<>::IsVectorAtCompileTime, compute_default_alignment<>::value, compute_matrix_flags<>::ret, size_at_compile_time<>::ret, evaluator<>::CoeffReadCost, evaluator<>::Flags, unpacket_traits<>::size, DenseBase<>::InnerSizeAtCompileTime, DenseCoeffsBase, GenericNumTraits<>::ReadCost, evaluator<>::Alignment, size_of_xpr_at_compile_time<>::ret, functor_traits<>::PacketAccess, has_ReturnType<>::value, is_lvalue<>::value
"aos/macros.h"  // for DISALLOW_COPY_AND_ASSIGN

The full include-list for aos/util/trapezoid_profile_test.cc:
"aos/util/trapezoid_profile.h"
<compare>        // for operator>, strong_ordering
<cstdlib>        // for abs
<memory>         // for allocator
<ratio>          // for ratio
"Eigen/Dense"
"gtest/gtest.h"  // for AssertionResult, Message, TestPartResult, EXPECT_TRUE, TestInfo, TEST_F, AssertionFailure, AssertionSuccess, EXPECT_EQ, EXPECT_NEAR, ASSERT_EQ, EXPECT_FALSE, Test

The full include-list for aos/util/foxglove_websocket.cc:
<string>                             // for allocator, operator==, char_traits, basic_string
"aos/configuration.h"                // for ReadConfig, Configuration
"aos/events/shm_event_loop.h"        // for ShmEventLoop
"aos/flatbuffers.h"                  // for FlatbufferDetachedBuffer
"aos/init.h"                         // for InitGoogle
"aos/util/foxglove_websocket_lib.h"  // for FoxgloveWebsocketServer
"gflags/gflags.h"                    // for SetUsageMessage, DEFINE_bool, DEFINE_string, DEFINE_uint32

The full include-list for aos/util/scoped_pipe.h:
<stddef.h>           // for size_t
<stdint.h>           // for uint32_t, uint8_t
<memory>             // for unique_ptr
<optional>           // for optional
<string>             // for string
"absl/types/span.h"  // for Span
namespace aos::util { class ScopedPipe::ScopedReadPipe; }  // lines 16-16
namespace aos::util { class ScopedPipe::ScopedWritePipe; }  // lines 17-17

The full include-list for aos/util/scoped_pipe_test.cc:
"aos/util/scoped_pipe.h"
<fcntl.h>        // for fcntl, FD_CLOEXEC, F_GETFD
<algorithm>      // for fill_n
<array>          // for array
<string>         // for string
"gtest/gtest.h"  // for Test, Message, AssertionResult, TestPartResult, ASSERT_EQ, TestInfo, TEST, CmpHelperNE, ASSERT_TRUE, ASSERT_FALSE, ASSERT_NE

The full include-list for aos/util/foxglove_websocket_lib.h:
<stdint.h>                       // for uint32_t
<map>                            // for map
<memory>                         // for unique_ptr
<set>                            // for set
"aos/events/event_loop.h"        // for RawFetcher, EventLoop
"foxglove/websocket/server.hpp"  // for ChannelId, Server

The full include-list for aos/util/foxglove_websocket_lib.cc:
"aos/util/foxglove_websocket_lib.h"
<chrono>                              // for operator<=>, operator-, operator/, duration, milliseconds, time_point
<compare>                             // for operator<=, strong_ordering
<foxglove/websocket/server.hpp>       // for Server, ChannelWithoutId
<string>                              // for operator+, char_traits, basic_string, string
<utility>                             // for pair, make_pair
"absl/container/btree_set.h"          // for btree_set, btree_iterator
"absl/strings/escaping.h"             // for Base64Escape
"absl/types/span.h"                   // for Span
"aos/configuration.h"                 // for Channel, ChannelIsReadableOnNode, ReadMethod, Configuration
"aos/events/context.h"                // for Context
"aos/flatbuffer_merge.h"              // for RecursiveCopyFlatBuffer
"aos/flatbuffers.h"                   // for FlatbufferDetachedBuffer
"aos/json_to_flatbuffer.h"            // for FlatbufferToJson
"aos/time/time.h"                     // for monotonic_clock
"aos/util/mcap_logger.h"              // for JsonSchemaForFlatbuffer, ShortenedChannelName
"flatbuffers/reflection_generated.h"  // for Schema
"flatbuffers/string.h"                // for String
"flatbuffers/vector.h"                // for Vector, VectorIterator
"gflags/gflags.h"                     // for DEFINE_uint32
"glog/logging.h"                      // for CHECK, COMPACT_GOOGLE_LOG_FATAL, LogMessageFatal
"nlohmann/json.hpp"                   // for basic_json

The full include-list for aos/util/simulation_logger.h:
<memory>                             // for unique_ptr
<string>                             // for string
<string_view>                        // for string_view
<vector>                             // for vector
"aos/configuration_generated.h"      // for Node
"aos/events/event_loop.h"            // for EventLoop
"aos/events/logging/log_namer.h"     // for LogNamer
"aos/events/logging/log_writer.h"    // for Logger
"aos/events/simulated_event_loop.h"  // for SimulatedEventLoopFactory

The full include-list for aos/util/simulation_logger.cc:
"aos/util/simulation_logger.h"
<algorithm>                           // for max
<chrono>                              // for operator*
<utility>                             // for move
"absl/strings/str_cat.h"              // for StrCat
"aos/configuration.h"                 // for GetNode, GetNodes, Node
"aos/events/logging/logfile_utils.h"  // for MaybeNodeName
"aos/time/time.h"                     // for monotonic_clock

The full include-list for aos/util/wrapping_counter_test.cc:
"aos/util/wrapping_counter.h"
<memory>         // for allocator
"gtest/gtest.h"  // for Test, EXPECT_EQ, Message, TestPartResult, TestInfo, TEST

The full include-list for aos/util/file.h:
<stdint.h>                // for uint8_t, int32_t
<sys/stat.h>              // for mode_t, S_IRWXU
<sys/types.h>             // for mode_t, size_t
<array>                   // for array
<memory>                  // for shared_ptr
<optional>                // for optional, nullopt
<string>                  // for string
<string_view>             // for string_view
<vector>                  // for vector
"absl/types/span.h"       // for Span
"aos/scoped/scoped_fd.h"  // for ScopedFD
"glog/logging.h"          // for CHECK, COMPACT_GOOGLE_LOG_FATAL, LogMessageFatal

The full include-list for aos/util/file.cc:
"aos/util/file.h"
<errno.h>                 // for errno, EEXIST, ENOSPC, EREMOTEIO
<fcntl.h>                 // for open, O_RDONLY, O_CREAT, O_RDWR, O_TRUNC, O_WRONLY
<fts.h>                   // for fts_close, fts_open, fts_read, FTS, FTSENT, FTS_D, FTS_DC, FTS_DEFAULT, FTS_DNR, FTS_DOT, FTS_DP, FTS_ERR, FTS_F, FTS_NOCHDIR, FTS_NS, FTS_NSOK, FTS_PHYSICAL, FTS_SL, FTS_SLNONE, FTS_XDEV
<stdio.h>                 // for remove, SEEK_SET
<string.h>                // for strerror
<sys/mman.h>              // for mmap, msync, munmap, PROT_READ, MAP_FAILED, MAP_SHARED, MS_SYNC, PROT_WRITE
<sys/stat.h>              // for stat, fstat, mkdir
<sys/types.h>             // for ssize_t, mode_t, size_t
<unistd.h>                // for read, NULL, close, lseek, write
<algorithm>               // for copy
<iterator>                // for back_insert_iterator, back_inserter
<optional>                // for optional, nullopt
<ostream>                 // for operator<<, basic_ostream
<string_view>             // for operator<<, string_view
"aos/scoped/scoped_fd.h"  // for ScopedFD
"flatbuffers/util.h"      // for StringToNumber

The full include-list for aos/util/scoped_pipe.h:
<stddef.h>           // for size_t
<stdint.h>           // for uint32_t, uint8_t
<memory>             // for unique_ptr
<optional>           // for optional
<string>             // for string
"absl/types/span.h"  // for Span
namespace aos::util { class ScopedPipe::ScopedReadPipe; }  // lines 16-16
namespace aos::util { class ScopedPipe::ScopedWritePipe; }  // lines 17-17

The full include-list for aos/util/scoped_pipe.cc:
"aos/util/scoped_pipe.h"
<errno.h>         // for errno, EAGAIN, EWOULDBLOCK
<fcntl.h>         // for fcntl, F_GETFL, F_SETFL, O_NONBLOCK, FD_CLOEXEC, F_GETFD, F_SETFD
<unistd.h>        // for close, read, write, size_t, ssize_t, pipe
<ostream>         // for operator<<
"glog/logging.h"  // for ErrnoLogMessage, Check_EQImpl, PCHECK, CHECK_EQ, CheckNotNull, CHECK_NOTNULL, PLOG

The full include-list for aos/util/clock_publisher.h:
"aos/events/event_loop.h"                // for EventLoop, Sender
"aos/events/simulated_event_loop.h"      // for SimulatedEventLoopFactory
"aos/util/clock_timepoints_generated.h"  // for ClockTimepoints

The full include-list for aos/util/clock_publisher.cc:
"aos/util/clock_publisher.h"
<algorithm>                         // for max
<chrono>                            // for duration, seconds
<vector>                            // for vector
"aos/configuration_generated.h"     // for Node
"aos/events/context.h"              // for Context
"flatbuffers/buffer.h"              // for Offset, AlignOf
"flatbuffers/flatbuffer_builder.h"  // for FlatBufferBuilder
"flatbuffers/string.h"              // for String
"flatbuffers/vector.h"              // for Vector

The full include-list for aos/util/error_counter.h:
<stddef.h>                          // for size_t
<array>                             // for array
"flatbuffers/buffer.h"              // for Offset
"flatbuffers/flatbuffer_builder.h"  // for FlatBufferBuilder, GetMutableTemporaryPointer
"flatbuffers/vector.h"              // for Vector
"glog/logging.h"                    // for CHECK_NOTNULL, DCHECK_LT, CHECK, COMPACT_GOOGLE_LOG_FATAL, DCHECK_EQ, LogMessageFatal

The full include-list for aos/util/error_counter_test.cc:
"aos/util/error_counter.h"
<algorithm>                          // for fill_n
<memory>                             // for allocator
"aos/events/event_loop_generated.h"  // for SendError, Sender, SendErrorCount
"aos/flatbuffers.h"                  // for FlatbufferDetachedBuffer
"gtest/gtest.h"                      // for Test, Message, TestPartResult, EXPECT_EQ, TestInfo, ASSERT_EQ, TEST

The full include-list for aos/util/top.h:
<stdint.h>                           // for uint64_t, int64_t
<sys/types.h>                        // for pid_t
<chrono>                             // for nanoseconds, duration, time_point, seconds
<functional>                         // for function
<map>                                // for map
<optional>                           // for optional, nullopt
<set>                                // for set
<string>                             // for string
<utility>                            // for move
"aos/containers/ring_buffer.h"       // for RingBuffer
"aos/events/event_loop.h"            // for EventLoop
"aos/time/time.h"                    // for monotonic_clock
"aos/util/process_info_generated.h"  // for ProcessInfo, ThreadState, TopProcessesFbs
"flatbuffers/buffer.h"               // for Offset
"flatbuffers/flatbuffer_builder.h"   // for FlatBufferBuilder

The full include-list for aos/util/top.cc:
"aos/util/top.h"
<dirent.h>                   // for closedir, opendir, readdir, dirent, DIR, DT_DIR
<errno.h>                    // for errno
<unistd.h>                   // for pid_t, sysconf, size_t, _SC_CLK_TCK, _SC_PAGESIZE
<algorithm>                  // for max
<array>                      // for array
<atomic>                     // for atomic
<cstring>                    // for strcmp, strerror
<istream>                    // for operator<<, basic_ostream, basic_ostream::operator<<, basic_istream::read, ifstream, ios_base
<queue>                      // for priority_queue
<ratio>                      // for ratio
<string>                     // for char_traits, string, operator<<, basic_string, operator==, to_string
<string_view>                // for operator<<, string_view, basic_string_view
<vector>                     // for vector
"absl/numeric/int128.h"      // for int128
"absl/strings/numbers.h"     // for SimpleAtoi
"absl/strings/str_cat.h"     // for StrCat
"absl/strings/str_format.h"  // for StrFormat
"absl/strings/str_split.h"   // for SkipWhitespace, StrSplit, Splitter
"flatbuffers/string.h"       // for String
"flatbuffers/vector.h"       // for Vector
"glog/logging.h"             // for LogMessage, COMPACT_GOOGLE_LOG_INFO, VLOG, LOG, COMPACT_GOOGLE_LOG_FATAL, COMPACT_GOOGLE_LOG_WARNING, ErrnoLogMessage, LOG_EVERY_T, LogMessageFatal, PLOG

The full include-list for aos/util/options.h:

The full include-list for aos/util/options_test.cc:
"aos/util/options.h"
<memory>         // for allocator
"gtest/gtest.h"  // for AssertionResult, Message, TestPartResult, EXPECT_FALSE, EXPECT_TRUE, TestInfo, TEST_F, Test

The full include-list for aos/util/math.h:
<cmath>       // for M_PI
"Eigen/Core"  // for Matrix, Ref

The full include-list for aos/util/math_test.cc:
"aos/util/math.h"
<memory>         // for allocator
"gtest/gtest.h"  // for AssertionResult, Test, Message, TestPartResult, EXPECT_FALSE, TestInfo, AssertPred1Helper, AssertPred2Helper, TEST, EXPECT_TRUE, EXPECT_PRED1, EXPECT_PRED2

The full include-list for aos/util/mcap_logger.h:
<stddef.h>                       // for size_t
<stdint.h>                       // for uint64_t, uint16_t, uint32_t, uint8_t
<iosfwd>                         // for ofstream, ostream, stringstream
<map>                            // for map
<memory>                         // for unique_ptr
<optional>                       // for optional
<string>                         // for string
<string_view>                    // for string_view
<utility>                        // for pair
<vector>                         // for vector
"aos/configuration_generated.h"  // for Channel, Configuration, Node
"aos/events/context.h"           // for Context
"aos/events/event_loop.h"        // for RawFetcher, EventLoop
"aos/fast_string_builder.h"      // for FastStringBuilder
"aos/flatbuffer_utils.h"         // for FlatbufferType
"aos/flatbuffers.h"              // for FlatbufferDetachedBuffer
"aos/time/time.h"                // for monotonic_clock
"nlohmann/json_fwd.hpp"          // for json

The full include-list for aos/util/mcap_logger.cc:
"aos/util/mcap_logger.h"
<algorithm>                           // for max, min, sort, fill_n
<chrono>                              // for time_point, duration, operator<=>
<numeric>                             // for accumulate
<ostream>                             // for operator<<, basic_ostream, basic_ostream::tellp, basic_ostream::put, basic_ostream::write, ostream
<set>                                 // for set
"absl/strings/str_cat.h"              // for StrCat
"absl/types/span.h"                   // for Span
"aos/configuration.h"                 // for ChannelIsReadableOnNode, GetChannelAliases, StrippedChannelToString
"aos/configuration_schema.h"          // for ConfigurationSchema
"aos/flatbuffer_merge.h"              // for CopyFlatBuffer, RecursiveCopyFlatBuffer
"aos/json_to_flatbuffer.h"            // for FlatbufferToJson
"flatbuffers/buffer.h"                // for Offset
"flatbuffers/detached_buffer.h"       // for DetachedBuffer
"flatbuffers/flatbuffer_builder.h"    // for FlatBufferBuilder
"flatbuffers/reflection.h"            // for Verify
"flatbuffers/reflection_generated.h"  // for Schema
"flatbuffers/string.h"                // for String
"flatbuffers/vector.h"                // for Vector, VectorIterator
"gflags/gflags.h"                     // for DEFINE_bool, DEFINE_uint64
"glog/logging.h"                      // for COMPACT_GOOGLE_LOG_FATAL, LogMessageFatal, CHECK, LOG, COMPACT_GOOGLE_LOG_INFO, CheckNotNull, Check_NEImpl, LogMessage, CHECK_NE, CHECK_NOTNULL, VLOG
"glog/vlog_is_on.h"                   // for VLOG_IS_ON
"lz4/lz4frame.h"                      // for LZ4F_compressFrame, LZ4F_compressFrameBound, LZ4F_isError, LZ4F_preferences_t
"nlohmann/json.hpp"                   // for basic_json

The full include-list for aos/util/filesystem_monitor.cc:
<stddef.h>                          // for size_t
<sys/statvfs.h>                     // for statvfs
<algorithm>                         // for max
<chrono>                            // for seconds
<istream>                           // for operator<<, basic_ostream, basic_istream::read, ifstream, ios_base
<optional>                          // for optional, nullopt
<string>                            // for char_traits, string, operator<<, basic_string
<string_view>                       // for operator==, basic_string_view, operator<<, string_view
<vector>                            // for vector
"absl/strings/str_split.h"          // for SkipWhitespace, StrSplit, Splitter, operator!=, SplitIterator
"aos/configuration.h"               // for ReadConfig, Configuration
"aos/events/event_loop.h"           // for EventLoop, Sender, TimerHandler, Sender::MakeBuilder
"aos/events/shm_event_loop.h"       // for ShmEventLoop
"aos/flatbuffers.h"                 // for FlatbufferDetachedBuffer
"aos/init.h"                        // for InitGoogle
"aos/util/filesystem_generated.h"   // for FilesystemStatus, Filesystem
"flatbuffers/buffer.h"              // for Offset, AlignOf
"flatbuffers/flatbuffer_builder.h"  // for FlatBufferBuilder
"flatbuffers/string.h"              // for String
"flatbuffers/vector.h"              // for Vector
"gflags/gflags.h"                   // for DEFINE_string
"glog/logging.h"                    // for COMPACT_GOOGLE_LOG_INFO, Check_LTImpl, LogMessage, VLOG, CHECK, CHECK_LT, COMPACT_GOOGLE_LOG_FATAL, ErrnoLogMessage, LogMessageFatal, PCHECK

The full include-list for aos/util/file.h:
<stdint.h>                // for uint8_t, int32_t
<sys/stat.h>              // for mode_t, S_IRWXU
<sys/types.h>             // for mode_t, size_t
<array>                   // for array
<memory>                  // for shared_ptr
<optional>                // for optional, nullopt
<string>                  // for string
<string_view>             // for string_view
<vector>                  // for vector
"absl/types/span.h"       // for Span
"aos/scoped/scoped_fd.h"  // for ScopedFD
"glog/logging.h"          // for CHECK, COMPACT_GOOGLE_LOG_FATAL, LogMessageFatal

The full include-list for aos/util/file_test.cc:
"aos/util/file.h"
<unistd.h>              // for getpid, close, unlink
<cstdlib>               // for system
<optional>              // for optional
<string>                // for operator+, string, basic_string, to_string, char_traits
"aos/realtime.h"        // for ScopedRealtime
"aos/testing/tmpdir.h"  // for TestTmpDir
"gmock/gmock.h"         // for ElementsAre, MakePredicateFormatterFromMatcher, EXPECT_THAT
"gtest/gtest.h"         // for Test, AssertionResult, Message, TestPartResult, TestInfo, EXPECT_EQ, TEST, ASSERT_EQ, ASSERT_TRUE, ASSERT_FALSE, EXPECT_FALSE, EXPECT_TRUE

The full include-list for aos/util/top.h:
<stdint.h>                           // for uint64_t, int64_t
<sys/types.h>                        // for pid_t
<chrono>                             // for nanoseconds, seconds
<functional>                         // for function
<map>                                // for map
<optional>                           // for optional, nullopt
<set>                                // for set
<string>                             // for string
<utility>                            // for move
"aos/containers/ring_buffer.h"       // for RingBuffer
"aos/events/event_loop.h"            // for EventLoop
"aos/time/time.h"                    // for monotonic_clock
"aos/util/process_info_generated.h"  // for ProcessInfo, ThreadState, TopProcessesFbs
"flatbuffers/buffer.h"               // for Offset
"flatbuffers/flatbuffer_builder.h"   // for FlatBufferBuilder

The full include-list for aos/util/top_test.cc:
"aos/util/top.h"
<pthread.h>                    // for pthread_self, pthread_setname_np
<signal.h>                     // for kill, SIGINT
<unistd.h>                     // for getpid, pid_t, fork
<algorithm>                    // for max
<atomic>                       // for atomic
<limits>                       // for numeric_limits
<ostream>                      // for operator<<
<string>                       // for allocator, string, operator+, operator<<
<string_view>                  // for operator<=>, string_view
<thread>                       // for thread
<vector>                       // for vector
"aos/configuration.h"          // for ReadConfig, Configuration
"aos/events/shm_event_loop.h"  // for ShmEventLoop
"aos/flatbuffers.h"            // for FlatbufferDetachedBuffer
"aos/ipc_lib/shm_base.h"       // for FLAGS_shm_base
"aos/json_to_flatbuffer.h"     // for FlatbufferToJson
"aos/testing/path.h"           // for ArtifactPath
"aos/testing/tmpdir.h"         // for TestTmpDir
"aos/util/file.h"              // for UnlinkRecursive
"flatbuffers/string.h"         // for String
"flatbuffers/vector.h"         // for Vector, VectorIterator
"gflags/gflags.h"              // for FlagSaver
"glog/logging.h"               // for LOG, COMPACT_GOOGLE_LOG_INFO, LogMessage, CHECK_NE, COMPACT_GOOGLE_LOG_FATAL, ErrnoLogMessage, LogMessageFatal, PCHECK
"gmock/gmock.h"                // for Contains, MakePredicateFormatterFromMatcher, ASSERT_THAT
"gtest/gtest.h"                // for AssertionResult, Message, TestPartResult, CmpHelperGT, CmpHelperLT, ASSERT_EQ, TestInfo, CmpHelperLE, ASSERT_GT, ASSERT_LT, ASSERT_TRUE, CmpHelperGE, TEST_F, ASSERT_LE, ASSERT_GE, SCOPED_TRACE, ASSERT_FALSE, Test

The full include-list for aos/util/phased_loop.h:
<chrono>           // for operator-
<optional>         // for optional, nullopt
"aos/time/time.h"  // for monotonic_clock, sleep_until

The full include-list for aos/util/phased_loop.cc:
"aos/util/phased_loop.h"
<compare>         // for operator>, operator>=, strong_ordering, operator<, operator<=
<ratio>           // for ratio
"glog/logging.h"  // for CHECK, COMPACT_GOOGLE_LOG_FATAL, LogMessageFatal, Check_EQImpl, CHECK_EQ

The full include-list for aos/util/global_factory.h:
<functional>     // for function
<memory>         // for unique_ptr
<string>         // for string
<unordered_map>  // for unordered_map
<utility>        // for forward
namespace aos { template <typename BaseClass, typename ...FactoryArgs> class GlobalFactory; }
namespace aos { template <typename SubClass> class GlobalFactory::SubClassRegisterer; }
namespace aos { template <typename SubClass> class GlobalFactory::SubClassRegisterer; }

The full include-list for aos/util/trapezoid_profile.h:
<chrono>        // for nanoseconds
"Eigen/Core"    // for StorageOptions, outer_stride_at_compile_time<>::ret, inner_stride_at_compile_time<>::ret, traits<>::Flags, DirectionType, DenseBase<>::ColsAtCompileTime, AccessorLevels, DenseBase<>::RowsAtCompileTime, is_arithmetic<>::value, DenseBase<>::IsRowMajor, traits<>::ColsAtCompileTime, traits<>::RowsAtCompileTime, TraversalType, AlignmentType, accessors_level<>::value, traits<>::MaxColsAtCompileTime, traits<>::MaxRowsAtCompileTime, GenericNumTraits<>::IsComplex, is_const<>::value, is_same<>::value, DenseBase<>::SizeAtCompileTime, UnrollingType, unpacket_traits<>::alignment, Matrix, ComparisonName, DenseBase<>::MaxColsAtCompileTime, DenseBase<>::MaxRowsAtCompileTime, DenseBase<>::MaxSizeAtCompileTime, packet_traits<>::Vectorizable, DenseBase<>::IsVectorAtCompileTime, compute_default_alignment<>::value, compute_matrix_flags<>::ret, size_at_compile_time<>::ret, evaluator<>::CoeffReadCost, evaluator<>::Flags, unpacket_traits<>::size, DenseBase<>::InnerSizeAtCompileTime, DenseCoeffsBase, GenericNumTraits<>::ReadCost, evaluator<>::Alignment, size_of_xpr_at_compile_time<>::ret, functor_traits<>::PacketAccess, has_ReturnType<>::value, is_lvalue<>::value
"aos/macros.h"  // for DISALLOW_COPY_AND_ASSIGN

The full include-list for aos/util/trapezoid_profile.cc:
"aos/util/trapezoid_profile.h"
<math.h>           // for sqrt
<algorithm>        // for min
<cstdlib>          // for abs
<ostream>          // for operator<<
"aos/time/time.h"  // for DurationInSeconds
"glog/logging.h"   // for GetReferenceableValue, Check_GEImpl, Check_GTImpl, CHECK_GE, CHECK_GT, COMPACT_GOOGLE_LOG_FATAL, LOG, LogMessageFatal

The full include-list for aos/util/bitpacking.h:
<stddef.h>           // for size_t
<stdint.h>           // for uint32_t, uint8_t, UINT32_C
<algorithm>          // for min, max
<cassert>            // for assert
<type_traits>        // for enable_if, is_unsigned
"absl/types/span.h"  // for Span

The full include-list for aos/util/bitpacking_test.cc:
"aos/util/bitpacking.h"
<array>          // for array
<cstdint>        // for uint8_t, uint16_t, uint64_t, UINT64_C
<memory>         // for allocator
"gtest/gtest.h"  // for EXPECT_EQ, Message, TestPartResult, Test, TestInfo, TEST

The full include-list for aos/util/config_validator_lib.h:
"aos/configuration.h"                           // for Configuration
"aos/util/config_validator_config_generated.h"  // for ConfigValidatorConfig

The full include-list for aos/util/config_validator_lib_test.cc:
"aos/util/config_validator_lib.h"
<memory>                    // for allocator
"aos/flatbuffers.h"         // for FlatbufferDetachedBuffer
"aos/json_to_flatbuffer.h"  // for JsonToFlatbuffer
"aos/testing/path.h"        // for ArtifactPath
"gtest/gtest-spi.h"
"gtest/gtest-spi.h"
"gtest/gtest.h"             // for Test, TestInfo, TEST, EXPECT_FATAL_FAILURE, DeathTest, EXPECT_NONFATAL_FAILURE, EXPECT_DEATH, Message, TestPartResult

The full include-list for aos/util/config_validator_lib.h:
"aos/configuration.h"                           // for Configuration
"aos/util/config_validator_config_generated.h"  // for ConfigValidatorConfig

The full include-list for aos/util/config_validator_lib.cc:
"aos/util/config_validator_lib.h"
<algorithm>                                  // for max
<chrono>                                     // for seconds
<cstdlib>                                    // for exit, EXIT_SUCCESS, size_t
<initializer_list>                           // for initializer_list
<map>                                        // for map, operator==, _Rb_tree_const_iterator, _Rb_tree_iterator
<memory>                                     // for unique_ptr
<ostream>                                    // for operator<<, basic_ostream
<set>                                        // for set
<string>                                     // for char_traits, operator<<, string, operator+, operator<=>
<string_view>                                // for operator<<, operator==
<utility>                                    // for pair, make_pair
<vector>                                     // for vector
"aos/events/event_loop.h"                    // for EventLoop, RawFetcher, RawSender, RawFetcher::Fetch, RawSender::Send
"aos/events/logging/log_reader.h"            // for LogReader
"aos/events/logging/logfile_sorting.h"       // for FindLogs, SortParts
"aos/events/logging/logfile_utils.h"         // for MaybeNodeName
"aos/events/simulated_event_loop.h"          // for SimulatedEventLoopFactory
"aos/flatbuffers/builder.h"                  // for Builder
"aos/flatbuffers/static_vector.h"            // for String, Vector
"aos/json_to_flatbuffer.h"                   // for FlatbufferToJson, JsonToFlatbuffer
"aos/network/remote_message_generated.h"     // for RemoteMessage
"aos/network/timestamp_channel.h"            // for ChannelTimestampFinder
"aos/testing/tmpdir.h"                       // for TestTmpDir
"aos/util/config_validator_config_static.h"  // for LoggerNodeSetValidationStatic, ConfigValidatorConfigStatic, LoggingConfigValidationStatic
"aos/util/file.h"                            // for UnlinkRecursive
"aos/util/simulation_logger.h"               // for LoggerState, MakeLoggersForAllNodes, MakeLoggersForNodes
"flatbuffers/buffer.h"                       // for Offset
"flatbuffers/detached_buffer.h"              // for DetachedBuffer
"flatbuffers/string.h"                       // for String
"flatbuffers/vector.h"                       // for Vector, VectorIterator
"gflags/gflags_declare.h"                    // for DECLARE_bool
"glog/logging.h"                             // for CHECK, COMPACT_GOOGLE_LOG_FATAL, COMPACT_GOOGLE_LOG_WARNING, LOG, LogMessage, LogMessageFatal, CheckNotNull, CHECK_NOTNULL
"gtest/gtest.h"                              // for AssertionResult, Message, TestPartResult, ASSERT_TRUE, DeathTest, ExitedWithCode, SCOPED_TRACE, ASSERT_EXIT, EXPECT_TRUE, FAIL

The full include-list for aos/util/phased_loop.h:
<chrono>           // for operator-
<optional>         // for nullopt, optional
"aos/time/time.h"  // for monotonic_clock, sleep_until

The full include-list for aos/util/phased_loop_test.cc:
"aos/util/phased_loop.h"
<memory>           // for allocator
<ratio>            // for ratio
"aos/time/time.h"  // for monotonic_clock
"gtest/gtest.h"    // for Message, TestPartResult, EXPECT_EQ, TestInfo, TEST_F, DeathTest, EXPECT_DEATH, ASSERT_EQ, Test

The full include-list for aos/util/generate_test_log.cc:
<chrono>                             // for seconds
<memory>                             // for unique_ptr
"aos/configuration.h"                // for ReadConfig, Configuration
"aos/events/event_loop.h"            // for EventLoop
"aos/events/logging/log_writer.h"    // for Logger
"aos/events/ping_lib.h"              // for Ping
"aos/events/pong_lib.h"              // for Pong
"aos/events/simulated_event_loop.h"  // for SimulatedEventLoopFactory
"aos/flatbuffers.h"                  // for FlatbufferDetachedBuffer
"aos/init.h"                         // for InitGoogle
"aos/testing/path.h"                 // for ArtifactPath
"gflags/gflags.h"                    // for DEFINE_string

The full include-list for aos/util/config_validator.cc:
<memory>                                        // for allocator
"aos/configuration.h"                           // for ReadConfig, Configuration
"aos/flatbuffers.h"                             // for FlatbufferDetachedBuffer
"aos/json_to_flatbuffer.h"                      // for JsonToFlatbuffer
"aos/util/config_validator_config_generated.h"  // for ConfigValidatorConfig
"aos/util/config_validator_lib.h"               // for ConfigIsValid
"gflags/gflags.h"                               // for DEFINE_string
"gtest/gtest.h"                                 // for Test, AssertionResult, TestInfo, ASSERT_TRUE, Message, TEST, TestPartResult

Signed-off-by: Stephan Pleines <pleines.stephan@gmail.com>
Change-Id: I29dc3f73f60642bee8bcc3ff3d6bd36558f12123
diff --git a/aos/util/simulation_logger.cc b/aos/util/simulation_logger.cc
index 32ff706..fabfd92 100644
--- a/aos/util/simulation_logger.cc
+++ b/aos/util/simulation_logger.cc
@@ -1,6 +1,14 @@
 #include "aos/util/simulation_logger.h"
 
+#include <algorithm>
+#include <chrono>
+#include <utility>
+
+#include "absl/strings/str_cat.h"
+
+#include "aos/configuration.h"
 #include "aos/events/logging/logfile_utils.h"
+#include "aos/time/time.h"
 
 namespace aos::util {
 LoggerState::LoggerState(aos::SimulatedEventLoopFactory *factory,