// Copyright 2020 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // // Next MinVersion: 1 module chromeos.cfm.mojom; // Interface defined by chromium specifically for the ChromeboxForMeetings // platform to leverage required chromium services/APIS. interface CfmBrowser { // Returns a persistent representation of active FieldTrial information, which // can be used to replicate the current state of the experimentation framework // in another process. GetVariationsData@0()=>(string field_trial_parameters, string field_trial_states, string enabled_features, string disabled_features); // Returns detailed information on running processes as well system-wide // graphics driver memory (-1 if error). GetMemoryDetails@1()=>(array process_data, int64 gpu_memory_size); }; struct ExtensionData { string name@0; string version@1; string id@2; string hashed_id@3; string description@4; }; // The data pertaining to an individual browser process. struct ProcessMemoryInformation { // The process id. int32 pid@0; // The process version string version@1; // The process product name. string product_name@2; // The number of processes which this memory represents. int32 num_processes@3; // If this is a child process of Chrome, what type (i.e. plugin) it is. string process_type@4; // Number of open file descriptors in this process. int32 num_open_fds@5; // Maximum number of file descriptors that can be opened in this process. int32 open_fds_soft_limit@6; // If this is a renderer process, what type it is. string renderer_type@7; // A collection of titles used, i.e. for a tab it'll show all the page titles. array titles@8; // Consistent memory metric for all platforms. int32 private_memory_footprint_kb@9; // iff process is process_type extension add additional info array extension_info@10; }; // Browser Process Information. struct ProcessData { // The qualified name of the browser string name@0; // The name of the process running string process_name@1; // List of child processes. array processes@2; };