blob: eb49d3272ecba28884017d21705eeef63b44de49 [file] [log] [blame]
/*
* Copyright (C) 2016 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <sstream>
#include "Hwc2TestProperties.h"
Hwc2TestBlendMode::Hwc2TestBlendMode(Hwc2TestCoverage coverage)
: Hwc2TestProperty(coverage, mCompleteBlendModes, mBasicBlendModes,
mDefaultBlendModes) { }
std::string Hwc2TestBlendMode::dump() const
{
std::stringstream dmp;
dmp << "\tblend mode: " << getBlendModeName(get()) << "\n";
return dmp.str();
}
const std::vector<hwc2_blend_mode_t> Hwc2TestBlendMode::mDefaultBlendModes = {
HWC2_BLEND_MODE_NONE,
};
const std::vector<hwc2_blend_mode_t> Hwc2TestBlendMode::mBasicBlendModes = {
HWC2_BLEND_MODE_NONE,
HWC2_BLEND_MODE_PREMULTIPLIED,
};
const std::vector<hwc2_blend_mode_t> Hwc2TestBlendMode::mCompleteBlendModes = {
HWC2_BLEND_MODE_NONE,
HWC2_BLEND_MODE_PREMULTIPLIED,
HWC2_BLEND_MODE_COVERAGE,
};
Hwc2TestComposition::Hwc2TestComposition(Hwc2TestCoverage coverage)
: Hwc2TestProperty(coverage, mCompleteCompositions, mBasicCompositions,
mDefaultCompositions) { }
std::string Hwc2TestComposition::dump() const
{
std::stringstream dmp;
dmp << "\tcomposition: " << getCompositionName(get()) << "\n";
return dmp.str();
}
const std::vector<hwc2_composition_t> Hwc2TestComposition::mDefaultCompositions = {
HWC2_COMPOSITION_DEVICE,
};
const std::vector<hwc2_composition_t> Hwc2TestComposition::mBasicCompositions = {
HWC2_COMPOSITION_CLIENT,
HWC2_COMPOSITION_DEVICE,
};
const std::vector<hwc2_composition_t> Hwc2TestComposition::mCompleteCompositions = {
HWC2_COMPOSITION_CLIENT,
HWC2_COMPOSITION_DEVICE,
HWC2_COMPOSITION_SOLID_COLOR,
HWC2_COMPOSITION_CURSOR,
HWC2_COMPOSITION_SIDEBAND,
};
Hwc2TestDataspace::Hwc2TestDataspace(Hwc2TestCoverage coverage)
: Hwc2TestProperty(coverage, completeDataspaces, basicDataspaces,
defaultDataspaces) { }
std::string Hwc2TestDataspace::dump() const
{
std::stringstream dmp;
dmp << "\tdataspace: " << get() << "\n";
return dmp.str();
}
const std::vector<android_dataspace_t> Hwc2TestDataspace::defaultDataspaces = {
HAL_DATASPACE_UNKNOWN,
};
const std::vector<android_dataspace_t> Hwc2TestDataspace::basicDataspaces = {
HAL_DATASPACE_UNKNOWN,
HAL_DATASPACE_V0_SRGB,
};
const std::vector<android_dataspace_t> Hwc2TestDataspace::completeDataspaces = {
HAL_DATASPACE_UNKNOWN,
HAL_DATASPACE_ARBITRARY,
HAL_DATASPACE_STANDARD_SHIFT,
HAL_DATASPACE_STANDARD_MASK,
HAL_DATASPACE_STANDARD_UNSPECIFIED,
HAL_DATASPACE_STANDARD_BT709,
HAL_DATASPACE_STANDARD_BT601_625,
HAL_DATASPACE_STANDARD_BT601_625_UNADJUSTED,
HAL_DATASPACE_STANDARD_BT601_525,
HAL_DATASPACE_STANDARD_BT601_525_UNADJUSTED,
HAL_DATASPACE_STANDARD_BT2020,
HAL_DATASPACE_STANDARD_BT2020_CONSTANT_LUMINANCE,
HAL_DATASPACE_STANDARD_BT470M,
HAL_DATASPACE_STANDARD_FILM,
HAL_DATASPACE_TRANSFER_SHIFT,
HAL_DATASPACE_TRANSFER_MASK,
HAL_DATASPACE_TRANSFER_UNSPECIFIED,
HAL_DATASPACE_TRANSFER_LINEAR,
HAL_DATASPACE_TRANSFER_SRGB,
HAL_DATASPACE_TRANSFER_SMPTE_170M,
HAL_DATASPACE_TRANSFER_GAMMA2_2,
HAL_DATASPACE_TRANSFER_GAMMA2_8,
HAL_DATASPACE_TRANSFER_ST2084,
HAL_DATASPACE_TRANSFER_HLG,
HAL_DATASPACE_RANGE_SHIFT,
HAL_DATASPACE_RANGE_MASK,
HAL_DATASPACE_RANGE_UNSPECIFIED,
HAL_DATASPACE_RANGE_FULL,
HAL_DATASPACE_RANGE_LIMITED,
HAL_DATASPACE_SRGB_LINEAR,
HAL_DATASPACE_V0_SRGB_LINEAR,
HAL_DATASPACE_SRGB,
HAL_DATASPACE_V0_SRGB,
HAL_DATASPACE_JFIF,
HAL_DATASPACE_V0_JFIF,
HAL_DATASPACE_BT601_625,
HAL_DATASPACE_V0_BT601_625,
HAL_DATASPACE_BT601_525,
HAL_DATASPACE_V0_BT601_525,
HAL_DATASPACE_BT709,
HAL_DATASPACE_V0_BT709,
HAL_DATASPACE_DEPTH,
};
Hwc2TestPlaneAlpha::Hwc2TestPlaneAlpha(Hwc2TestCoverage coverage)
: Hwc2TestProperty(coverage, mCompletePlaneAlphas, mBasicPlaneAlphas,
mDefaultPlaneAlphas) { }
std::string Hwc2TestPlaneAlpha::dump() const
{
std::stringstream dmp;
dmp << "\tplane alpha: " << get() << "\n";
return dmp.str();
}
const std::vector<float> Hwc2TestPlaneAlpha::mDefaultPlaneAlphas = {
1.0f,
};
const std::vector<float> Hwc2TestPlaneAlpha::mBasicPlaneAlphas = {
1.0f, 0.0f,
};
const std::vector<float> Hwc2TestPlaneAlpha::mCompletePlaneAlphas = {
1.0f, 0.75f, 0.5f, 0.25f, 0.0f,
};
Hwc2TestTransform::Hwc2TestTransform(Hwc2TestCoverage coverage)
: Hwc2TestProperty(coverage, mCompleteTransforms, mBasicTransforms,
mDefaultTransforms) { }
std::string Hwc2TestTransform::dump() const
{
std::stringstream dmp;
dmp << "\ttransform: " << getTransformName(get()) << "\n";
return dmp.str();
}
const std::vector<hwc_transform_t> Hwc2TestTransform::mDefaultTransforms = {
static_cast<hwc_transform_t>(0),
};
const std::vector<hwc_transform_t> Hwc2TestTransform::mBasicTransforms = {
static_cast<hwc_transform_t>(0),
HWC_TRANSFORM_FLIP_H,
HWC_TRANSFORM_FLIP_V,
HWC_TRANSFORM_ROT_90,
};
const std::vector<hwc_transform_t> Hwc2TestTransform::mCompleteTransforms = {
static_cast<hwc_transform_t>(0),
HWC_TRANSFORM_FLIP_H,
HWC_TRANSFORM_FLIP_V,
HWC_TRANSFORM_ROT_90,
HWC_TRANSFORM_ROT_180,
HWC_TRANSFORM_ROT_270,
HWC_TRANSFORM_FLIP_H_ROT_90,
HWC_TRANSFORM_FLIP_V_ROT_90,
};