vitasdk
Documentation of the vitasdk
uid_guid.h
Go to the documentation of this file.
1 
6 #ifndef _PSP2KERN_KERNEL_SYSMEM_UID_GUID_H_
7 #define _PSP2KERN_KERNEL_SYSMEM_UID_GUID_H_
8 
9 #include <vitasdk/build_utils.h>
10 #include <psp2kern/types.h>
12 
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16 
17 typedef struct SceGUIDKernelCreateOpt {
18  union {
21  };
31 
32 /*
33  * Create a GUID object that belongs to the target process id
34  *
35  * @param[in] sce_class - The target class.
36  * @param[in] name - The guid name.
37  * @param[in] opt - The guid create option.
38  * If do not specify the pid, it should belong to the kernel.
39  * @param[out] obj - The object pointer output pointer.
40  *
41  * @return GUID on success, < 0 on error.
42  */
44 
45 /*
46  * Close GUID (Inactive GUID)
47  *
48  * @param[in] guid - The remove target guid.
49  *
50  * @return 0 on success, < 0 on error.
51  */
53 
65 
79 
96 
107 
119 int ksceGUIDGetUIDVectorByClass(SceClass *cls, int vis_level, SceUID *vector, SceSize num, SceSize *ret_num);
120 
121 
123 int ksceGUIDKernelCreateWithAttr(SceClass *pClass, const char *name, SceUInt32 attr, SceObjectBase **ppEntry);
125 
126 
127 /* For backwards compatibility */
128 
130 
131 #define ksceKernelCreateUidObj(sce_class, name, opt, obj) ksceGUIDKernelCreateWithOpt(sce_class, name, opt, obj)
132 #define ksceKernelDeleteUid(guid) ksceGUIDClose(guid)
133 #define ksceKernelGetObjForUid(guid, sce_class, object) ksceGUIDReferObjectWithClass(guid, sce_class, object)
134 #define ksceKernelUidRelease(guid) ksceGUIDReleaseObject(guid)
135 
136 
137 #ifdef __cplusplus
138 }
139 #endif
140 
141 #endif /* _PSP2KERN_KERNEL_SYSMEM_UID_GUID_H_ */
SceUInt32 pid
Definition: uid_guid.h:24
int ksceGUIDReleaseObject(SceUID guid)
Releases an object referenced by the UID.
int ksceGUIDClose(SceUID guid)
int ksceGUIDReferObjectWithClassLevel(SceUID guid, SceClass *pClass, SceUInt32 level, SceObjectBase **entry)
Gets an object from a UID with class and level.
SceUInt32 field_4
Definition: uid_guid.h:22
int ksceGUIDReferObjectWithClass(SceUID guid, SceClass *sce_class, SceObjectBase **object)
Gets an object from a UID with class.
SceUInt32 attr
Definition: uid_guid.h:20
int ksceGUIDKernelCreateWithAttr(SceClass *pClass, const char *name, SceUInt32 attr, SceObjectBase **ppEntry)
int ksceGUIDGetObjectWithClass(SceUID uid, SceClass *pClass, SceObjectBase **obj)
SceGUIDKernelCreateOpt SceCreateUidObjOpt
Definition: uid_guid.h:129
SceUInt32 field_8
Definition: uid_guid.h:23
VITASDK_BUILD_ASSERT_EQ(0x20, SceGUIDKernelCreateOpt)
SceUInt32 field_18
Definition: uid_guid.h:27
SceUInt32 flags
Definition: uid_guid.h:19
SceUInt32 field_10
Definition: uid_guid.h:25
SceUInt32 field_14
Definition: uid_guid.h:26
SceUID ksceGUIDKernelCreateWithOpt(SceClass *sce_class, const char *name, SceGUIDKernelCreateOpt *opt, SceObjectBase **obj)
SceUInt32 field_1C
Definition: uid_guid.h:28
int ksceGUIDReferObject(SceUID guid, SceObjectBase **object)
Gets an object from a UID.
int ksceGUIDGetUIDVectorByClass(SceClass *cls, int vis_level, SceUID *vector, SceSize num, SceSize *ret_num)
Get created GUID vectors.
SceUID ksceGUIDOpenByGUID(SceUID guid)
Definition: uid_class.h:18
Definition: uid_guid.h:17
Definition: uid_class.h:34
unsigned int SceSize
Definition: types.h:56
int SceUID
UIDs are used to describe many different kernel objects.
Definition: types.h:90
uint32_t SceUInt32
Definition: types.h:45