public class

ProjectedCarHardwareManager

extends java.lang.Object

implements CarHardwareManager

 java.lang.Object

↳androidx.car.app.hardware.ProjectedCarHardwareManager

Gradle dependencies

compile group: 'androidx.car.app', name: 'app-projected', version: '1.2.0-rc01'

  • groupId: androidx.car.app
  • artifactId: app-projected
  • version: 1.2.0-rc01

Artifact androidx.car.app:app-projected:1.2.0-rc01 it located at Google repository (https://maven.google.com/)

Overview

CarHardwareManager which access projected vehicle specific properties, sensors, and actions via a host interface.

Summary

Constructors
publicProjectedCarHardwareManager(CarContext context, HostDispatcher hostDispatcher)

Creates an instance of CarHardwareManager.

Methods
public CarInfogetCarInfo()

public CarSensorsgetCarSensors()

from java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructors

public ProjectedCarHardwareManager(CarContext context, HostDispatcher hostDispatcher)

Creates an instance of CarHardwareManager.

Methods

public CarInfo getCarInfo()

public CarSensors getCarSensors()

Source

/*
 * Copyright 2021 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.
 */
package androidx.car.app.hardware;

import static androidx.annotation.RestrictTo.Scope.LIBRARY;

import androidx.annotation.NonNull;
import androidx.annotation.OptIn;
import androidx.annotation.RestrictTo;
import androidx.car.app.CarContext;
import androidx.car.app.HostDispatcher;
import androidx.car.app.annotations.ExperimentalCarApi;
import androidx.car.app.hardware.common.CarHardwareHostDispatcher;
import androidx.car.app.hardware.info.CarInfo;
import androidx.car.app.hardware.info.CarSensors;
import androidx.car.app.hardware.info.ProjectedCarInfo;
import androidx.car.app.hardware.info.ProjectedCarSensors;

/**
 * {@link CarHardwareManager} which access projected vehicle specific properties, sensors, and
 * actions via a host interface.
 *
 * @hide
 */
@RestrictTo(LIBRARY)
public class ProjectedCarHardwareManager implements CarHardwareManager {

    private final ProjectedCarInfo mVehicleInfo;
    private final ProjectedCarSensors mVehicleSensors;

    @NonNull
    @Override
    public CarInfo getCarInfo() {
        return mVehicleInfo;
    }

    @NonNull
    @Override
    public CarSensors getCarSensors() {
        return mVehicleSensors;
    }

    /**
     * Creates an instance of {@link CarHardwareManager}.
     */
    // TODO(b/216177515): Remove this annotation once EvStatus is ready.
    @OptIn(markerClass = ExperimentalCarApi.class)
    public ProjectedCarHardwareManager(@NonNull CarContext context,
            @NonNull HostDispatcher hostDispatcher) {
        CarHardwareHostDispatcher carHardwareHostDispatcher =
                new CarHardwareHostDispatcher(hostDispatcher);
        mVehicleInfo = new ProjectedCarInfo(carHardwareHostDispatcher);
        mVehicleSensors = new ProjectedCarSensors(carHardwareHostDispatcher);
    }
}