@@ -427,7 +427,6 @@ struct SignatureElement {
427427
428428static_assert (sizeof (SignatureElement) == 4 * sizeof (uint32_t ),
429429 " PSV Signature elements must fit in 16 bytes." );
430-
431430} // namespace v0
432431
433432namespace v1 {
@@ -468,7 +467,6 @@ struct RuntimeInfo : public v0::RuntimeInfo {
468467 sys::swapByteOrder (GeomData.MaxVertexCount );
469468 }
470469};
471-
472470} // namespace v1
473471
474472namespace v2 {
@@ -585,37 +583,39 @@ struct ProgramSignatureElement {
585583
586584static_assert (sizeof (ProgramSignatureElement) == 32 ,
587585 " ProgramSignatureElement is misaligned" );
588-
589- // following dx12 naming
590- // https://learn.microsoft.com/en-us/windows/win32/api/d3d12/ns-d3d12-d3d12_root_constants
591- struct RootConstants {
586+ namespace RST0 {
587+ namespace v0 {
588+ struct RootDescriptor {
592589 uint32_t ShaderRegister;
593590 uint32_t RegisterSpace;
594- uint32_t Num32BitValues;
595-
596591 void swapBytes () {
597592 sys::swapByteOrder (ShaderRegister);
598593 sys::swapByteOrder (RegisterSpace);
599- sys::swapByteOrder (Num32BitValues);
600594 }
601595};
602- struct RootDescriptor_V1_0 {
603- uint32_t ShaderRegister;
604- uint32_t RegisterSpace;
596+ } // namespace v0
597+
598+ namespace v1 {
599+ struct RootDescriptor : public v0 ::RootDescriptor {
600+ uint32_t Flags;
605601 void swapBytes () {
606- sys::swapByteOrder (ShaderRegister );
607- sys::swapByteOrder (RegisterSpace );
602+ v0::RootDescriptor::swapBytes ( );
603+ sys::swapByteOrder (Flags );
608604 }
609605};
610-
611- struct RootDescriptor_V1_1 {
606+ } // namespace v1
607+ } // namespace RST0
608+ // following dx12 naming
609+ // https://learn.microsoft.com/en-us/windows/win32/api/d3d12/ns-d3d12-d3d12_root_constants
610+ struct RootConstants {
612611 uint32_t ShaderRegister;
613612 uint32_t RegisterSpace;
614- uint32_t Flags;
613+ uint32_t Num32BitValues;
614+
615615 void swapBytes () {
616616 sys::swapByteOrder (ShaderRegister);
617617 sys::swapByteOrder (RegisterSpace);
618- sys::swapByteOrder (Flags );
618+ sys::swapByteOrder (Num32BitValues );
619619 }
620620};
621621
0 commit comments