CommandArgAttributes.cs 894 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. using Ryujinx.Horizon.Sdk.Sf.Hipc;
  2. using System;
  3. namespace Ryujinx.Horizon.Sdk.Sf
  4. {
  5. [AttributeUsage(AttributeTargets.Parameter)]
  6. class BufferAttribute : Attribute
  7. {
  8. public HipcBufferFlags Flags { get; }
  9. public ushort FixedSize { get; }
  10. public BufferAttribute(HipcBufferFlags flags)
  11. {
  12. Flags = flags;
  13. }
  14. public BufferAttribute(HipcBufferFlags flags, ushort fixedSize)
  15. {
  16. Flags = flags | HipcBufferFlags.FixedSize;
  17. FixedSize = fixedSize;
  18. }
  19. }
  20. [AttributeUsage(AttributeTargets.Parameter)]
  21. class ClientProcessIdAttribute : Attribute
  22. {
  23. }
  24. [AttributeUsage(AttributeTargets.Parameter)]
  25. class CopyHandleAttribute : Attribute
  26. {
  27. }
  28. [AttributeUsage(AttributeTargets.Parameter)]
  29. class MoveHandleAttribute : Attribute
  30. {
  31. }
  32. }