17d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza/*
27d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza * Copyright 2016 The Android Open Source Project
37d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza *
47d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza * Licensed under the Apache License, Version 2.0 (the "License");
57d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza * you may not use this file except in compliance with the License.
67d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza * You may obtain a copy of the License at
77d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza *
87d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza *      http://www.apache.org/licenses/LICENSE-2.0
97d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza *
107d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza * Unless required by applicable law or agreed to in writing, software
117d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza * distributed under the License is distributed on an "AS IS" BASIS,
127d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
137d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza * See the License for the specific language governing permissions and
147d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza * limitations under the License.
157d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza */
167d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza
177d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza#include <ui/HdrCapabilities.h>
187d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza
197d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza#include <binder/Parcel.h>
207d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza
217d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stozanamespace android {
227d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza
237d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stozastatus_t HdrCapabilities::writeToParcel(Parcel* parcel) const
247d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza{
257d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    status_t result = parcel->writeInt32Vector(mSupportedHdrTypes);
267d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    if (result != OK) {
277d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza        return result;
287d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    }
297d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    result = parcel->writeFloat(mMaxLuminance);
307d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    if (result != OK) {
317d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza        return result;
327d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    }
337d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    result = parcel->writeFloat(mMaxAverageLuminance);
347d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    if (result != OK) {
357d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza        return result;
367d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    }
377d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    result = parcel->writeFloat(mMinLuminance);
387d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    return result;
397d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza}
407d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza
417d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stozastatus_t HdrCapabilities::readFromParcel(const Parcel* parcel)
427d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza{
437d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    status_t result = parcel->readInt32Vector(&mSupportedHdrTypes);
447d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    if (result != OK) {
457d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza        return result;
467d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    }
477d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    result = parcel->readFloat(&mMaxLuminance);
487d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    if (result != OK) {
497d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza        return result;
507d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    }
517d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    result = parcel->readFloat(&mMaxAverageLuminance);
527d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    if (result != OK) {
537d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza        return result;
547d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    }
557d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    result = parcel->readFloat(&mMinLuminance);
567d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza    return result;
577d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza}
587d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza
597d7ae7345abfb91be55c4aed6c9be9d09a144e4cDan Stoza} // namespace android
60