Skip to content

dxgi: Add DXGI_OUTDUPL_FLAG enum annotation to DuplicateOutput1() - #1981

Open
Marijn Suijten (MarijnS95) wants to merge 1 commit into
microsoft:mainfrom
MarijnS95:dxgi-associated-enum
Open

dxgi: Add DXGI_OUTDUPL_FLAG enum annotation to DuplicateOutput1()#1981
Marijn Suijten (MarijnS95) wants to merge 1 commit into
microsoft:mainfrom
MarijnS95:dxgi-associated-enum

Conversation

@MarijnS95

@MarijnS95 Marijn Suijten (MarijnS95) commented Aug 29, 2024

Copy link
Copy Markdown
Contributor

Separated from #1911 (comment).

On the side, alphabetically sort some flags and use --enumMakeFlags in emitter.settings.rsp instead of --with-attribute XXX=Flags in Namespace/settings.rsp.

<IncludeRoot>/um/dxprogrammablecapture.h
--namespace
Windows.Win32.Graphics.Dxgi
--with-attribute

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inversely, could we also have all the =AssociatedEnum in here? It seems much nicer to me to have configuration in the namespace-specific settings.rsp than in one humongous global file, if possible?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No. The scraper and the emitter have different roles and supporting toolchains.

@MarijnS95 Marijn Suijten (MarijnS95) Sep 9, 2024

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there any complete docs on what configures the scraper (probably the namespace-specific settings.rsp) and what configures the emitter (probably the global emitter.settings.rsp... 🙂), and when to use either?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@MarijnS95 Marijn Suijten (MarijnS95) Sep 19, 2024

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mike Battista (@mikebattista) unfortunately that doesn't explain directly which flags are available, nor what precedence I should stick to. Searching further in the repo shows that --enumMakeFlags is a feature of ClangSharpSourceToWinmd so it makes sense that that only works via emitter settings (and likewise, --with-attribute seems to be a feature of the scraper).

The question remains: do we prefer to set the Flags attribute on the emitter via --enumMakeFlags, or do we prefer to set it earlier via --with-attribute on the scraper as done before this PR?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mike Battista (@mikebattista) are you able to help with the above question, so that we can further this PR?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Resolving this thread as it seems like a tangent and unrelated to the PR.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rafael Rivera (@riverar) it's a valid question to ask whether to configure partition-specific types inside the... partition, or in the global file (and if either method has repercussions). That affects how this PR is structured (i.e. related) which now mostly hacks more types into the global file.

Sure we can merge this without that discussion since there are many more DXGI annotations to move if partition-specific configuration is preferred, but we should still have that discussion (and resulting documentation improvements and .rsp changes somewhere). Should I click "reference in new issue"?

On the side, alphabetically sort some flags and use `--enumMakeFlags`
in `emitter.settings.rsp` instead of `--with-attribute XXX=Flags`
in `Namespace/settings.rsp`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants