Loading include/vr/vr_manager/vr_manager.h +0 −28 Original line number Original line Diff line number Diff line Loading @@ -41,28 +41,6 @@ public: }; }; // Must be kept in sync with interface defined in // IPersistentVrStateCallbacks.aidl. class IPersistentVrStateCallbacks : public IInterface { public: DECLARE_META_INTERFACE(PersistentVrStateCallbacks) virtual void onPersistentVrStateChanged(bool enabled) = 0; }; enum PersistentVrStateCallbacksTransaction { ON_PERSISTENT_VR_STATE_CHANGED = IBinder::FIRST_CALL_TRANSACTION, }; class BnPersistentVrStateCallbacks : public BnInterface<IPersistentVrStateCallbacks> { public: status_t onTransact(uint32_t code, const Parcel& data, Parcel* reply, uint32_t flags = 0) override; }; // Must be kept in sync with interface defined in IVrManager.aidl. // Must be kept in sync with interface defined in IVrManager.aidl. class IVrManager : public IInterface { class IVrManager : public IInterface { Loading @@ -71,18 +49,12 @@ public: virtual void registerListener(const sp<IVrStateCallbacks>& cb) = 0; virtual void registerListener(const sp<IVrStateCallbacks>& cb) = 0; virtual void unregisterListener(const sp<IVrStateCallbacks>& cb) = 0; virtual void unregisterListener(const sp<IVrStateCallbacks>& cb) = 0; virtual void registerPersistentVrStateListener( const sp<IPersistentVrStateCallbacks>& cb) = 0; virtual void unregisterPersistentVrStateListener( const sp<IPersistentVrStateCallbacks>& cb) = 0; virtual bool getVrModeState() = 0; virtual bool getVrModeState() = 0; }; }; enum VrManagerTransaction { enum VrManagerTransaction { REGISTER_LISTENER = IBinder::FIRST_CALL_TRANSACTION, REGISTER_LISTENER = IBinder::FIRST_CALL_TRANSACTION, UNREGISTER_LISTENER, UNREGISTER_LISTENER, REGISTER_PERSISTENT_VR_STATE_LISTENER, UNREGISTER_PERSISTENT_VR_STATE_LISTENER, GET_VR_MODE_STATE, GET_VR_MODE_STATE, }; }; Loading libs/vr/libdisplay/display_client.cpp +23 −0 Original line number Original line Diff line number Diff line Loading @@ -248,6 +248,29 @@ int DisplayClient::GetLastFrameEdsTransform(LateLatchOutput* ll_out) { return 0; return 0; } } int DisplayClient::EnterVrMode() { auto status = InvokeRemoteMethod<DisplayRPC::EnterVrMode>(); if (!status) { ALOGE( "DisplayClient::EnterVrMode: Failed to set display service to Vr mode"); return -status.error(); } return 0; } int DisplayClient::ExitVrMode() { auto status = InvokeRemoteMethod<DisplayRPC::ExitVrMode>(); if (!status) { ALOGE( "DisplayClient::ExitVrMode: Failed to revert display service from Vr " "mode"); return -status.error(); } return 0; } std::unique_ptr<DisplaySurfaceClient> DisplayClient::CreateDisplaySurface( std::unique_ptr<DisplaySurfaceClient> DisplayClient::CreateDisplaySurface( int width, int height, int format, int usage, int flags) { int width, int height, int format, int usage, int flags) { return DisplaySurfaceClient::Create(width, height, format, usage, flags); return DisplaySurfaceClient::Create(width, height, format, usage, flags); Loading libs/vr/libdisplay/include/private/dvr/display_client.h +3 −0 Original line number Original line Diff line number Diff line Loading @@ -105,6 +105,9 @@ class DisplayClient : public pdx::ClientBase<DisplayClient> { // Pull the latest eds pose data from the display service renderer // Pull the latest eds pose data from the display service renderer int GetLastFrameEdsTransform(LateLatchOutput* ll_out); int GetLastFrameEdsTransform(LateLatchOutput* ll_out); int EnterVrMode(); int ExitVrMode(); std::unique_ptr<DisplaySurfaceClient> CreateDisplaySurface( std::unique_ptr<DisplaySurfaceClient> CreateDisplaySurface( int width, int height, int format, int usage, int flags); int width, int height, int format, int usage, int flags); Loading libs/vr/libdisplay/include/private/dvr/display_rpc.h +4 −0 Original line number Original line Diff line number Diff line Loading @@ -217,6 +217,8 @@ struct DisplayRPC { kOpGetMetadataBuffer, kOpGetMetadataBuffer, kOpCreateVideoMeshSurface, kOpCreateVideoMeshSurface, kOpVideoMeshSurfaceCreateProducerQueue, kOpVideoMeshSurfaceCreateProducerQueue, kOpEnterVrMode, kOpExitVrMode, kOpSetViewerParams kOpSetViewerParams }; }; Loading @@ -243,6 +245,8 @@ struct DisplayRPC { PDX_REMOTE_METHOD(VideoMeshSurfaceCreateProducerQueue, PDX_REMOTE_METHOD(VideoMeshSurfaceCreateProducerQueue, kOpVideoMeshSurfaceCreateProducerQueue, kOpVideoMeshSurfaceCreateProducerQueue, LocalChannelHandle(Void)); LocalChannelHandle(Void)); PDX_REMOTE_METHOD(EnterVrMode, kOpEnterVrMode, int(Void)); PDX_REMOTE_METHOD(ExitVrMode, kOpExitVrMode, int(Void)); PDX_REMOTE_METHOD(SetViewerParams, kOpSetViewerParams, PDX_REMOTE_METHOD(SetViewerParams, kOpSetViewerParams, void(const ViewerParams& viewer_params)); void(const ViewerParams& viewer_params)); }; }; Loading libs/vr/libvr_manager/vr_manager.cpp +0 −50 Original line number Original line Diff line number Diff line Loading @@ -53,40 +53,6 @@ status_t BnVrStateCallbacks::onTransact(uint32_t code, const Parcel& data, return BBinder::onTransact(code, data, reply, flags); return BBinder::onTransact(code, data, reply, flags); } } // Must be kept in sync with interface defined in // IPersistentVrStateCallbacks.aidl. class BpPersistentVrStateCallbacks : public BpInterface<IPersistentVrStateCallbacks> { public: explicit BpPersistentVrStateCallbacks(const sp<IBinder>& impl) : BpInterface<IPersistentVrStateCallbacks>(impl) {} void onPersistentVrStateChanged(bool enabled) { Parcel data, reply; data.writeInterfaceToken( IPersistentVrStateCallbacks::getInterfaceDescriptor()); data.writeBool(enabled); remote()->transact(ON_PERSISTENT_VR_STATE_CHANGED, data, &reply, IBinder::FLAG_ONEWAY); } }; IMPLEMENT_META_INTERFACE(PersistentVrStateCallbacks, "android.service.vr.IPersistentVrStateCallbacks"); status_t BnPersistentVrStateCallbacks::onTransact( uint32_t code, const Parcel& data, Parcel* reply, uint32_t flags) { switch(code) { case ON_PERSISTENT_VR_STATE_CHANGED: { CHECK_INTERFACE(IPersistentVrStateCallbacks, data, reply); onPersistentVrStateChanged(data.readBool()); return OK; } } return BBinder::onTransact(code, data, reply, flags); } // Must be kept in sync with interface defined in IVrManager.aidl. // Must be kept in sync with interface defined in IVrManager.aidl. class BpVrManager : public BpInterface<IVrManager> { class BpVrManager : public BpInterface<IVrManager> { Loading @@ -108,22 +74,6 @@ class BpVrManager : public BpInterface<IVrManager> { remote()->transact(UNREGISTER_LISTENER, data, NULL); remote()->transact(UNREGISTER_LISTENER, data, NULL); } } void registerPersistentVrStateListener( const sp<IPersistentVrStateCallbacks>& cb) override { Parcel data; data.writeInterfaceToken(IVrManager::getInterfaceDescriptor()); data.writeStrongBinder(IInterface::asBinder(cb)); remote()->transact(REGISTER_PERSISTENT_VR_STATE_LISTENER, data, NULL); } void unregisterPersistentVrStateListener( const sp<IPersistentVrStateCallbacks>& cb) override { Parcel data; data.writeInterfaceToken(IVrManager::getInterfaceDescriptor()); data.writeStrongBinder(IInterface::asBinder(cb)); remote()->transact(UNREGISTER_PERSISTENT_VR_STATE_LISTENER, data, NULL); } bool getVrModeState() override { bool getVrModeState() override { Parcel data, reply; Parcel data, reply; data.writeInterfaceToken(IVrManager::getInterfaceDescriptor()); data.writeInterfaceToken(IVrManager::getInterfaceDescriptor()); Loading Loading
include/vr/vr_manager/vr_manager.h +0 −28 Original line number Original line Diff line number Diff line Loading @@ -41,28 +41,6 @@ public: }; }; // Must be kept in sync with interface defined in // IPersistentVrStateCallbacks.aidl. class IPersistentVrStateCallbacks : public IInterface { public: DECLARE_META_INTERFACE(PersistentVrStateCallbacks) virtual void onPersistentVrStateChanged(bool enabled) = 0; }; enum PersistentVrStateCallbacksTransaction { ON_PERSISTENT_VR_STATE_CHANGED = IBinder::FIRST_CALL_TRANSACTION, }; class BnPersistentVrStateCallbacks : public BnInterface<IPersistentVrStateCallbacks> { public: status_t onTransact(uint32_t code, const Parcel& data, Parcel* reply, uint32_t flags = 0) override; }; // Must be kept in sync with interface defined in IVrManager.aidl. // Must be kept in sync with interface defined in IVrManager.aidl. class IVrManager : public IInterface { class IVrManager : public IInterface { Loading @@ -71,18 +49,12 @@ public: virtual void registerListener(const sp<IVrStateCallbacks>& cb) = 0; virtual void registerListener(const sp<IVrStateCallbacks>& cb) = 0; virtual void unregisterListener(const sp<IVrStateCallbacks>& cb) = 0; virtual void unregisterListener(const sp<IVrStateCallbacks>& cb) = 0; virtual void registerPersistentVrStateListener( const sp<IPersistentVrStateCallbacks>& cb) = 0; virtual void unregisterPersistentVrStateListener( const sp<IPersistentVrStateCallbacks>& cb) = 0; virtual bool getVrModeState() = 0; virtual bool getVrModeState() = 0; }; }; enum VrManagerTransaction { enum VrManagerTransaction { REGISTER_LISTENER = IBinder::FIRST_CALL_TRANSACTION, REGISTER_LISTENER = IBinder::FIRST_CALL_TRANSACTION, UNREGISTER_LISTENER, UNREGISTER_LISTENER, REGISTER_PERSISTENT_VR_STATE_LISTENER, UNREGISTER_PERSISTENT_VR_STATE_LISTENER, GET_VR_MODE_STATE, GET_VR_MODE_STATE, }; }; Loading
libs/vr/libdisplay/display_client.cpp +23 −0 Original line number Original line Diff line number Diff line Loading @@ -248,6 +248,29 @@ int DisplayClient::GetLastFrameEdsTransform(LateLatchOutput* ll_out) { return 0; return 0; } } int DisplayClient::EnterVrMode() { auto status = InvokeRemoteMethod<DisplayRPC::EnterVrMode>(); if (!status) { ALOGE( "DisplayClient::EnterVrMode: Failed to set display service to Vr mode"); return -status.error(); } return 0; } int DisplayClient::ExitVrMode() { auto status = InvokeRemoteMethod<DisplayRPC::ExitVrMode>(); if (!status) { ALOGE( "DisplayClient::ExitVrMode: Failed to revert display service from Vr " "mode"); return -status.error(); } return 0; } std::unique_ptr<DisplaySurfaceClient> DisplayClient::CreateDisplaySurface( std::unique_ptr<DisplaySurfaceClient> DisplayClient::CreateDisplaySurface( int width, int height, int format, int usage, int flags) { int width, int height, int format, int usage, int flags) { return DisplaySurfaceClient::Create(width, height, format, usage, flags); return DisplaySurfaceClient::Create(width, height, format, usage, flags); Loading
libs/vr/libdisplay/include/private/dvr/display_client.h +3 −0 Original line number Original line Diff line number Diff line Loading @@ -105,6 +105,9 @@ class DisplayClient : public pdx::ClientBase<DisplayClient> { // Pull the latest eds pose data from the display service renderer // Pull the latest eds pose data from the display service renderer int GetLastFrameEdsTransform(LateLatchOutput* ll_out); int GetLastFrameEdsTransform(LateLatchOutput* ll_out); int EnterVrMode(); int ExitVrMode(); std::unique_ptr<DisplaySurfaceClient> CreateDisplaySurface( std::unique_ptr<DisplaySurfaceClient> CreateDisplaySurface( int width, int height, int format, int usage, int flags); int width, int height, int format, int usage, int flags); Loading
libs/vr/libdisplay/include/private/dvr/display_rpc.h +4 −0 Original line number Original line Diff line number Diff line Loading @@ -217,6 +217,8 @@ struct DisplayRPC { kOpGetMetadataBuffer, kOpGetMetadataBuffer, kOpCreateVideoMeshSurface, kOpCreateVideoMeshSurface, kOpVideoMeshSurfaceCreateProducerQueue, kOpVideoMeshSurfaceCreateProducerQueue, kOpEnterVrMode, kOpExitVrMode, kOpSetViewerParams kOpSetViewerParams }; }; Loading @@ -243,6 +245,8 @@ struct DisplayRPC { PDX_REMOTE_METHOD(VideoMeshSurfaceCreateProducerQueue, PDX_REMOTE_METHOD(VideoMeshSurfaceCreateProducerQueue, kOpVideoMeshSurfaceCreateProducerQueue, kOpVideoMeshSurfaceCreateProducerQueue, LocalChannelHandle(Void)); LocalChannelHandle(Void)); PDX_REMOTE_METHOD(EnterVrMode, kOpEnterVrMode, int(Void)); PDX_REMOTE_METHOD(ExitVrMode, kOpExitVrMode, int(Void)); PDX_REMOTE_METHOD(SetViewerParams, kOpSetViewerParams, PDX_REMOTE_METHOD(SetViewerParams, kOpSetViewerParams, void(const ViewerParams& viewer_params)); void(const ViewerParams& viewer_params)); }; }; Loading
libs/vr/libvr_manager/vr_manager.cpp +0 −50 Original line number Original line Diff line number Diff line Loading @@ -53,40 +53,6 @@ status_t BnVrStateCallbacks::onTransact(uint32_t code, const Parcel& data, return BBinder::onTransact(code, data, reply, flags); return BBinder::onTransact(code, data, reply, flags); } } // Must be kept in sync with interface defined in // IPersistentVrStateCallbacks.aidl. class BpPersistentVrStateCallbacks : public BpInterface<IPersistentVrStateCallbacks> { public: explicit BpPersistentVrStateCallbacks(const sp<IBinder>& impl) : BpInterface<IPersistentVrStateCallbacks>(impl) {} void onPersistentVrStateChanged(bool enabled) { Parcel data, reply; data.writeInterfaceToken( IPersistentVrStateCallbacks::getInterfaceDescriptor()); data.writeBool(enabled); remote()->transact(ON_PERSISTENT_VR_STATE_CHANGED, data, &reply, IBinder::FLAG_ONEWAY); } }; IMPLEMENT_META_INTERFACE(PersistentVrStateCallbacks, "android.service.vr.IPersistentVrStateCallbacks"); status_t BnPersistentVrStateCallbacks::onTransact( uint32_t code, const Parcel& data, Parcel* reply, uint32_t flags) { switch(code) { case ON_PERSISTENT_VR_STATE_CHANGED: { CHECK_INTERFACE(IPersistentVrStateCallbacks, data, reply); onPersistentVrStateChanged(data.readBool()); return OK; } } return BBinder::onTransact(code, data, reply, flags); } // Must be kept in sync with interface defined in IVrManager.aidl. // Must be kept in sync with interface defined in IVrManager.aidl. class BpVrManager : public BpInterface<IVrManager> { class BpVrManager : public BpInterface<IVrManager> { Loading @@ -108,22 +74,6 @@ class BpVrManager : public BpInterface<IVrManager> { remote()->transact(UNREGISTER_LISTENER, data, NULL); remote()->transact(UNREGISTER_LISTENER, data, NULL); } } void registerPersistentVrStateListener( const sp<IPersistentVrStateCallbacks>& cb) override { Parcel data; data.writeInterfaceToken(IVrManager::getInterfaceDescriptor()); data.writeStrongBinder(IInterface::asBinder(cb)); remote()->transact(REGISTER_PERSISTENT_VR_STATE_LISTENER, data, NULL); } void unregisterPersistentVrStateListener( const sp<IPersistentVrStateCallbacks>& cb) override { Parcel data; data.writeInterfaceToken(IVrManager::getInterfaceDescriptor()); data.writeStrongBinder(IInterface::asBinder(cb)); remote()->transact(UNREGISTER_PERSISTENT_VR_STATE_LISTENER, data, NULL); } bool getVrModeState() override { bool getVrModeState() override { Parcel data, reply; Parcel data, reply; data.writeInterfaceToken(IVrManager::getInterfaceDescriptor()); data.writeInterfaceToken(IVrManager::getInterfaceDescriptor()); Loading