pub unsafe fn CreatePrivateObjectSecurity<P0, P1, P2, P3>(
    parentdescriptor: P0,
    creatordescriptor: P1,
    newdescriptor: *mut PSECURITY_DESCRIPTOR,
    isdirectoryobject: P2,
    token: P3,
    genericmapping: *const GENERIC_MAPPING
) -> Result<()>
where P0: IntoParam<PSECURITY_DESCRIPTOR>, P1: IntoParam<PSECURITY_DESCRIPTOR>, P2: IntoParam<BOOL>, P3: IntoParam<HANDLE>,