struct CCL::ISystemPermissionProvider
Overview
Interface to handle certain system permissions. More…
#include <isystemshell.h> struct ISystemPermissionProvider: public CCL::IUnknown { // methods virtual PermissionState CCL_API getPermissionState (StringID permissionId) = 0; virtual IAsyncOperation*CCL_API requestPermission (StringID permissionId) = 0; };
Inherited Members
public: // methods virtual tresult CCL_API queryInterface (UIDRef iid, void** ptr) = 0; virtual unsigned int CCL_API retain () = 0; virtual unsigned int CCL_API release () = 0;
Detailed Documentation
Interface to handle certain system permissions.
Methods
virtual PermissionState CCL_API getPermissionState (StringID permissionId) = 0
Get current state of a permission (does not show any UI).
virtual IAsyncOperation*CCL_API requestPermission (StringID permissionId) = 0
Request a permission, result is the final state (kPermissionGranted/kPermissionDenied).
Completes immediately if no user consent is needed.
When implementing, providers must return nullptr for ids they don’t handle.