0
Files
src/chromecast
Thomas Guilbert cbc9f60e71 [CodeHealth] Spanify vector_math top level APIs
This CL converts top level vector_math APIs to use spans instead of
array+length. The actual implementation of the algorithms is untouched,
and not spanified.

Spanifying the algorithms themselves had a large performance impact, and
not attempted. There was a ~2 orders of magnitude slow down from using
std::ranges::transform or SpanReaders.

Updating these APIs still provides some benefits: the source and
destinations are guaranteed to have the same length now.

Bug: 373960632
Change-Id: I2fcd44c5aa748d35819c77c314ba6bbc7d106add
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6238738
Auto-Submit: Thomas Guilbert <tguilbert@chromium.org>
Reviewed-by: Kenneth MacKay <kmackay@chromium.org>
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Reviewed-by: Ahmed Fakhry <afakhry@chromium.org>
Commit-Queue: Thomas Guilbert <tguilbert@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1419023}
2025-02-11 17:34:26 -08:00
..
2025-02-07 15:10:36 -08:00
2024-12-11 02:02:13 +00:00

Cast base

cast_features

This file contains tools for checking the feature state of all of the features which affect Cast products. Cast features build upon the Chrome feature system. Some aspects of Cast require the feature system to work differently, however, so some additional logic has been layered on top. Details are available in comments of the header file. The basics are:

  • If you are adding a new feature, add it to cast_features.cc so it lives alongside existing features
  • Add your new feature to the list of kFeatures in cast_features.cc
BASE_FEATURE(kMyFeature, "my_feature", base::FEATURE_DISABLED_BY_DEFAULT);


const base::Feature* kFeatures[] = {
  // ..other features
  &kMyFeature
}