Hiho,
ich hab hier nen C## Code.
Code:
ENUMDEF(KS_ACCESS)
#define KS_AC_NONE ENUMVAL(KS_ACCESS, 0) /* no
access at all */
#define KS_AC_READ ENUMVAL(KS_ACCESS, 1) /* read
access */
#define KS_AC_WRITE ENUMVAL(KS_ACCESS, 2) /* write
access */
#define KS_AC_READWRITE (KS_AC_READ | KS_AC_WRITE)
#define KS_AC_DELETEABLE ENUMVAL(KS_ACCESS, 0x10000000)
#define KS_AC_RENAMEABLE ENUMVAL(KS_ACCESS, 0x08000000)
#define KS_AC_LINKABLE ENUMVAL(KS_ACCESS, 0x04000000)
#define KS_AC_UNLINKABLE ENUMVAL(KS_ACCESS, 0x02000000)
/* object can act as a factory */
#define KS_AC_INSTANTIABLE ENUMVAL(KS_ACCESS, 0x20000000)
/* object is part of another object */
#define KS_AC_PART ENUMVAL(KS_ACCESS, 0x80000000)
hier werden in einer Cardinal Bits gesetzt.
Kombinationen wie z.B: 0xBE000002 können auftreten.
Ich bin nun am Rätseln, wie ich nun aus der Zahl die entsteht, herauslesen kann, ob nun Das KS_AC_PART gesetzt ist, oder eben nicht. Oder das KS_AC_READ ... etc. Sitze aufm Schlauch.