chromium/out/Default/gen/extensions/common/api/system_display.h

// Copyright 2024 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// GENERATED FROM THE API DEFINITION IN
//   extensions/common/api/system_display.idl
// by tools/json_schema_compiler.
// DO NOT EDIT.

#ifndef EXTENSIONS_COMMON_API_SYSTEM_DISPLAY_H__
#define EXTENSIONS_COMMON_API_SYSTEM_DISPLAY_H__

#include <stdint.h>

#include <map>
#include <memory>
#include <optional>
#include <string>
#include <vector>

#include "base/values.h"
#include <string_view>


namespace extensions {
namespace api {
namespace system_display {

//
// Types
//

struct Bounds {};

struct Insets {};

struct Point {};

struct TouchCalibrationPair {};

struct TouchCalibrationPairQuad {};

struct DisplayMode {};

// Layout position, i.e. edge of parent that the display is attached to.
enum class LayoutPosition {};


const char* ToString(LayoutPosition as_enum);
LayoutPosition ParseLayoutPosition(std::string_view as_string);
std::u16string GetLayoutPositionParseError(std::string_view as_string);

struct DisplayLayout {};

struct Edid {};

// An enum to tell if the display is detected and used by the system. The
// display is considered 'inactive', if it is not detected by the system (maybe
// disconnected, or considered disconnected due to sleep mode, etc). This state
// is used to keep existing display when the all displays are disconnected, for
// example.
enum class ActiveState {};


const char* ToString(ActiveState as_enum);
ActiveState ParseActiveState(std::string_view as_string);
std::u16string GetActiveStateParseError(std::string_view as_string);

struct DisplayUnitInfo {};

struct DisplayProperties {};

struct GetInfoFlags {};

// Mirror mode, i.e. different ways of how a display is mirrored to other
// displays.
enum class MirrorMode {};


const char* ToString(MirrorMode as_enum);
MirrorMode ParseMirrorMode(std::string_view as_string);
std::u16string GetMirrorModeParseError(std::string_view as_string);

struct MirrorModeInfo {};


//
// Functions
//

namespace GetInfo {

struct Params {};

namespace Results {

base::Value::List Create(const std::vector<DisplayUnitInfo>& display_info);
}  // namespace Results

}  // namespace GetInfo

namespace GetDisplayLayout {

namespace Results {

base::Value::List Create(const std::vector<DisplayLayout>& layouts);
}  // namespace Results

}  // namespace GetDisplayLayout

namespace SetDisplayProperties {

struct Params {};

namespace Results {

base::Value::List Create();
}  // namespace Results

}  // namespace SetDisplayProperties

namespace SetDisplayLayout {

struct Params {};

namespace Results {

base::Value::List Create();
}  // namespace Results

}  // namespace SetDisplayLayout

namespace EnableUnifiedDesktop {

struct Params {};

}  // namespace EnableUnifiedDesktop

namespace OverscanCalibrationStart {

struct Params {};

}  // namespace OverscanCalibrationStart

namespace OverscanCalibrationAdjust {

struct Params {};

}  // namespace OverscanCalibrationAdjust

namespace OverscanCalibrationReset {

struct Params {};

}  // namespace OverscanCalibrationReset

namespace OverscanCalibrationComplete {

struct Params {};

}  // namespace OverscanCalibrationComplete

namespace ShowNativeTouchCalibration {

struct Params {};

namespace Results {

base::Value::List Create(bool success);
}  // namespace Results

}  // namespace ShowNativeTouchCalibration

namespace StartCustomTouchCalibration {

struct Params {};

}  // namespace StartCustomTouchCalibration

namespace CompleteCustomTouchCalibration {

struct Params {};

}  // namespace CompleteCustomTouchCalibration

namespace ClearTouchCalibration {

struct Params {};

}  // namespace ClearTouchCalibration

namespace SetMirrorMode {

struct Params {};

namespace Results {

base::Value::List Create();
}  // namespace Results

}  // namespace SetMirrorMode

//
// Events
//

namespace OnDisplayChanged {

extern const char kEventName[];  // "system.display.onDisplayChanged"

base::Value::List Create();
}  // namespace OnDisplayChanged

}  // namespace system_display
}  // namespace api
}  // namespace extensions

#endif  // EXTENSIONS_COMMON_API_SYSTEM_DISPLAY_H__