Daniel Jeliński <djelinski1(a)gmail.com> writes:
+import "unknwn.idl"; + +interface ITransaction; +interface ITransactionDispenser; +interface ITransactionOptions; +interface ITransactionOutcomeEvents; +interface ITransactionCompletionEvents; + +/*========================================================================== + * Transaction related types + *==========================================================================*/ + +[local,pointer_default(unique)] +interface BasicTransactionTypes + { + + typedef struct BOID { + byte rgb[16]; + } BOID; + + cpp_quote("#define BOID_NULL (*((BOID*)(&IID_NULL)))") + + /* change the following two line together */ + cpp_quote("#ifndef MAX_TRAN_DESC_DEFINED") /* conflicts with uimsg.h. This is temporary work around */ + cpp_quote("#define MAX_TRAN_DESC_DEFINED") + typedef enum TX_MISC_CONSTANTS + { + MAX_TRAN_DESC = 40 + } TX_MISC_CONSTANTS; + cpp_quote("#endif") + + /* Unit Of Work. */ + + typedef BOID XACTUOW; + + /* Data type for isolation level values. */ + + typedef LONG ISOLEVEL; + + /* Constants that specifiy isolation level of a transaction. */ + + typedef enum ISOLATIONLEVEL { + ISOLATIONLEVEL_UNSPECIFIED = 0xFFFFFFFF, + ISOLATIONLEVEL_CHAOS = 0x00000010, + ISOLATIONLEVEL_READUNCOMMITTED = 0x00000100, + ISOLATIONLEVEL_BROWSE = 0x00000100, /* Synonym for _READUNCOMITTED */ + ISOLATIONLEVEL_CURSORSTABILITY = 0x00001000, + ISOLATIONLEVEL_READCOMMITTED = 0x00001000, /* Synonym for _CURSORSTABILITY */ + ISOLATIONLEVEL_REPEATABLEREAD = 0x00010000, + ISOLATIONLEVEL_SERIALIZABLE = 0x00100000, + ISOLATIONLEVEL_ISOLATED = 0x00100000, /* Synonym for _SERIALIZABLE */ + } ISOLATIONLEVEL; + + /* Transaction information structure, used in ITransaction */ + + typedef struct XACTTRANSINFO { + XACTUOW uow; /* The current unit of work */ + ISOLEVEL isoLevel; /* The isolation level for the current UOW */ + ULONG isoFlags; /* Values from ISOFLAG enumeration */ + DWORD grfTCSupported; /* Flags indicating capabilities */ + DWORD grfRMSupported; /* ... of this transaction wrt */ + DWORD grfTCSupportedRetaining; /* ... parameters to Commit */ + DWORD grfRMSupportedRetaining; /* ... */ + } XACTTRANSINFO; + + typedef struct XACTSTATS { + ULONG cOpen; /* The number of currently extant transactions. */ + ULONG cCommitting; /* The number of transactions which are proceding towards committing. */ + ULONG cCommitted; /* The number of transactions that are have been committed. */ + ULONG cAborting; /* The number of transactions which are in the process of aborting. */ + ULONG cAborted; /* The number of transactions that are have been aborted. */ + ULONG cInDoubt; /* The number of transactions which are presently in doubt. */ + ULONG cHeuristicDecision; /* The number of transactions that have completed by heuristic decision. */ + FILETIME timeTransactionsUp; /* The amount of time that this transaction service has been up. */ + } XACTSTATS;
This is clearly a straight copy of the SDK header. You can't do that. -- Alexandre Julliard julliard(a)winehq.org
It probably is, I downloaded it somewhere. Had to remove some stuff to get it to compile. I think saw some mail saying that headers aren't copyrighted. Anyway. What's the correct approach here? I mean, I clearly shouldn't add anything, and removing stuff also doesn't look like the right idea. Well I could remove comments, but that's hardly innovative. What's the usual way to do it? 2013/5/1 Alexandre Julliard <julliard(a)winehq.org>
Daniel Jeliński <djelinski1(a)gmail.com> writes:
+import "unknwn.idl"; + +interface ITransaction; +interface ITransactionDispenser; +interface ITransactionOptions; +interface ITransactionOutcomeEvents; +interface ITransactionCompletionEvents; +
+/*==========================================================================
+ * Transaction related types + *==========================================================================*/ + +[local,pointer_default(unique)] +interface BasicTransactionTypes + { + + typedef struct BOID { + byte rgb[16]; + } BOID; + + cpp_quote("#define BOID_NULL (*((BOID*)(&IID_NULL)))") + + /* change the following two line together */ + cpp_quote("#ifndef MAX_TRAN_DESC_DEFINED") /* conflicts with uimsg.h. This is temporary work around */ + cpp_quote("#define MAX_TRAN_DESC_DEFINED") + typedef enum TX_MISC_CONSTANTS + { + MAX_TRAN_DESC = 40 + } TX_MISC_CONSTANTS; + cpp_quote("#endif") + + /* Unit Of Work. */ + + typedef BOID XACTUOW; + + /* Data type for isolation level values. */ + + typedef LONG ISOLEVEL; + + /* Constants that specifiy isolation level of a transaction. */ + + typedef enum ISOLATIONLEVEL { + ISOLATIONLEVEL_UNSPECIFIED = 0xFFFFFFFF, + ISOLATIONLEVEL_CHAOS = 0x00000010, + ISOLATIONLEVEL_READUNCOMMITTED = 0x00000100, + ISOLATIONLEVEL_BROWSE = 0x00000100, /* Synonym for _READUNCOMITTED */ + ISOLATIONLEVEL_CURSORSTABILITY = 0x00001000, + ISOLATIONLEVEL_READCOMMITTED = 0x00001000, /* Synonym for _CURSORSTABILITY */ + ISOLATIONLEVEL_REPEATABLEREAD = 0x00010000, + ISOLATIONLEVEL_SERIALIZABLE = 0x00100000, + ISOLATIONLEVEL_ISOLATED = 0x00100000, /* Synonym for _SERIALIZABLE */ + } ISOLATIONLEVEL; + + /* Transaction information structure, used in ITransaction */ + + typedef struct XACTTRANSINFO { + XACTUOW uow; /* The current unit of work */ + ISOLEVEL isoLevel; /* The isolation level for the current UOW */ + ULONG isoFlags; /* Values from ISOFLAG enumeration */ + DWORD grfTCSupported; /* Flags indicating capabilities */ + DWORD grfRMSupported; /* ... of this transaction wrt */ + DWORD grfTCSupportedRetaining; /* ... parameters to Commit */ + DWORD grfRMSupportedRetaining; /* ... */ + } XACTTRANSINFO; + + typedef struct XACTSTATS { + ULONG cOpen; /* The number of currently extant transactions. */ + ULONG cCommitting; /* The number of transactions which are proceding towards committing. */ + ULONG cCommitted; /* The number of transactions that are have been committed. */ + ULONG cAborting; /* The number of transactions which are in the process of aborting. */ + ULONG cAborted; /* The number of transactions that are have been aborted. */ + ULONG cInDoubt; /* The number of transactions which are presently in doubt. */ + ULONG cHeuristicDecision; /* The number of transactions that have completed by heuristic decision. */ + FILETIME timeTransactionsUp; /* The amount of time that this transaction service has been up. */ + } XACTSTATS;
This is clearly a straight copy of the SDK header. You can't do that.
-- Alexandre Julliard julliard(a)winehq.org
Type it yourself. Refer to MSDN, public descriptions, and publicly available headers, but don't copy/paste from any of them. --Juan On Wed, May 1, 2013 at 3:56 AM, Daniel Jeliński <djelinski1(a)gmail.com>wrote:
It probably is, I downloaded it somewhere. Had to remove some stuff to get it to compile. I think saw some mail saying that headers aren't copyrighted.
Anyway. What's the correct approach here? I mean, I clearly shouldn't add anything, and removing stuff also doesn't look like the right idea. Well I could remove comments, but that's hardly innovative. What's the usual way to do it?
2013/5/1 Alexandre Julliard <julliard(a)winehq.org>
Daniel Jeliński <djelinski1(a)gmail.com> writes:
+import "unknwn.idl"; + +interface ITransaction; +interface ITransactionDispenser; +interface ITransactionOptions; +interface ITransactionOutcomeEvents; +interface ITransactionCompletionEvents; +
+/*==========================================================================
+ * Transaction related types + *==========================================================================*/ + +[local,pointer_default(unique)] +interface BasicTransactionTypes + { + + typedef struct BOID { + byte rgb[16]; + } BOID; + + cpp_quote("#define BOID_NULL (*((BOID*)(&IID_NULL)))") + + /* change the following two line together */ + cpp_quote("#ifndef MAX_TRAN_DESC_DEFINED") /* conflicts with uimsg.h. This is temporary work around */ + cpp_quote("#define MAX_TRAN_DESC_DEFINED") + typedef enum TX_MISC_CONSTANTS + { + MAX_TRAN_DESC = 40 + } TX_MISC_CONSTANTS; + cpp_quote("#endif") + + /* Unit Of Work. */ + + typedef BOID XACTUOW; + + /* Data type for isolation level values. */ + + typedef LONG ISOLEVEL; + + /* Constants that specifiy isolation level of a transaction. */ + + typedef enum ISOLATIONLEVEL { + ISOLATIONLEVEL_UNSPECIFIED = 0xFFFFFFFF, + ISOLATIONLEVEL_CHAOS = 0x00000010, + ISOLATIONLEVEL_READUNCOMMITTED = 0x00000100, + ISOLATIONLEVEL_BROWSE = 0x00000100, /* Synonym for _READUNCOMITTED */ + ISOLATIONLEVEL_CURSORSTABILITY = 0x00001000, + ISOLATIONLEVEL_READCOMMITTED = 0x00001000, /* Synonym for _CURSORSTABILITY */ + ISOLATIONLEVEL_REPEATABLEREAD = 0x00010000, + ISOLATIONLEVEL_SERIALIZABLE = 0x00100000, + ISOLATIONLEVEL_ISOLATED = 0x00100000, /* Synonym for _SERIALIZABLE */ + } ISOLATIONLEVEL; + + /* Transaction information structure, used in ITransaction */ + + typedef struct XACTTRANSINFO { + XACTUOW uow; /* The current unit of work */ + ISOLEVEL isoLevel; /* The isolation level for the current UOW */ + ULONG isoFlags; /* Values from ISOFLAG enumeration */ + DWORD grfTCSupported; /* Flags indicating capabilities */ + DWORD grfRMSupported; /* ... of this transaction wrt */ + DWORD grfTCSupportedRetaining; /* ... parameters to Commit */ + DWORD grfRMSupportedRetaining; /* ... */ + } XACTTRANSINFO; + + typedef struct XACTSTATS { + ULONG cOpen; /* The number of currently extant transactions. */ + ULONG cCommitting; /* The number of transactions which are proceding towards committing. */ + ULONG cCommitted; /* The number of transactions that are have been committed. */ + ULONG cAborting; /* The number of transactions which are in the process of aborting. */ + ULONG cAborted; /* The number of transactions that are have been aborted. */ + ULONG cInDoubt; /* The number of transactions which are presently in doubt. */ + ULONG cHeuristicDecision; /* The number of transactions that have completed by heuristic decision. */ + FILETIME timeTransactionsUp; /* The amount of time that this transaction service has been up. */ + } XACTSTATS;
This is clearly a straight copy of the SDK header. You can't do that.
-- Alexandre Julliard julliard(a)winehq.org
Can I use mingw headers instead? I see that we already have some of these (mprerror.h, fltdefs.h, several more in msvcrt directory), and they have the header I need ( http://sourceforge.net/apps/trac/mingw-w64/browser/experimental/headers_addi... ). 2013/5/1 Juan Lang <juan.lang(a)gmail.com>
Type it yourself. Refer to MSDN, public descriptions, and publicly available headers, but don't copy/paste from any of them. --Juan
On Wed, May 1, 2013 at 3:56 AM, Daniel Jeliński <djelinski1(a)gmail.com>wrote:
It probably is, I downloaded it somewhere. Had to remove some stuff to get it to compile. I think saw some mail saying that headers aren't copyrighted.
Anyway. What's the correct approach here? I mean, I clearly shouldn't add anything, and removing stuff also doesn't look like the right idea. Well I could remove comments, but that's hardly innovative. What's the usual way to do it?
2013/5/1 Alexandre Julliard <julliard(a)winehq.org>
Daniel Jeliński <djelinski1(a)gmail.com> writes:
+import "unknwn.idl"; + +interface ITransaction; +interface ITransactionDispenser; +interface ITransactionOptions; +interface ITransactionOutcomeEvents; +interface ITransactionCompletionEvents; +
+/*==========================================================================
+ * Transaction related types + *==========================================================================*/ + +[local,pointer_default(unique)] +interface BasicTransactionTypes + { + + typedef struct BOID { + byte rgb[16]; + } BOID; + + cpp_quote("#define BOID_NULL (*((BOID*)(&IID_NULL)))") + + /* change the following two line together */ + cpp_quote("#ifndef MAX_TRAN_DESC_DEFINED") /* conflicts with uimsg.h. This is temporary work around */ + cpp_quote("#define MAX_TRAN_DESC_DEFINED") + typedef enum TX_MISC_CONSTANTS + { + MAX_TRAN_DESC = 40 + } TX_MISC_CONSTANTS; + cpp_quote("#endif") + + /* Unit Of Work. */ + + typedef BOID XACTUOW; + + /* Data type for isolation level values. */ + + typedef LONG ISOLEVEL; + + /* Constants that specifiy isolation level of a transaction. */ + + typedef enum ISOLATIONLEVEL { + ISOLATIONLEVEL_UNSPECIFIED = 0xFFFFFFFF, + ISOLATIONLEVEL_CHAOS = 0x00000010, + ISOLATIONLEVEL_READUNCOMMITTED = 0x00000100, + ISOLATIONLEVEL_BROWSE = 0x00000100, /* Synonym for _READUNCOMITTED */ + ISOLATIONLEVEL_CURSORSTABILITY = 0x00001000, + ISOLATIONLEVEL_READCOMMITTED = 0x00001000, /* Synonym for _CURSORSTABILITY */ + ISOLATIONLEVEL_REPEATABLEREAD = 0x00010000, + ISOLATIONLEVEL_SERIALIZABLE = 0x00100000, + ISOLATIONLEVEL_ISOLATED = 0x00100000, /* Synonym for _SERIALIZABLE */ + } ISOLATIONLEVEL; + + /* Transaction information structure, used in ITransaction */ + + typedef struct XACTTRANSINFO { + XACTUOW uow; /* The current unit of work */ + ISOLEVEL isoLevel; /* The isolation level for the current UOW */ + ULONG isoFlags; /* Values from ISOFLAG enumeration */ + DWORD grfTCSupported; /* Flags indicating capabilities */ + DWORD grfRMSupported; /* ... of this transaction wrt */ + DWORD grfTCSupportedRetaining; /* ... parameters to Commit */ + DWORD grfRMSupportedRetaining; /* ... */ + } XACTTRANSINFO; + + typedef struct XACTSTATS { + ULONG cOpen; /* The number of currently extant transactions. */ + ULONG cCommitting; /* The number of transactions which are proceding towards committing. */ + ULONG cCommitted; /* The number of transactions that are have been committed. */ + ULONG cAborting; /* The number of transactions which are in the process of aborting. */ + ULONG cAborted; /* The number of transactions that are have been aborted. */ + ULONG cInDoubt; /* The number of transactions which are presently in doubt. */ + ULONG cHeuristicDecision; /* The number of transactions that have completed by heuristic decision. */ + FILETIME timeTransactionsUp; /* The amount of time that this transaction service has been up. */ + } XACTSTATS;
This is clearly a straight copy of the SDK header. You can't do that.
-- Alexandre Julliard julliard(a)winehq.org
participants (3)
-
Alexandre Julliard -
Daniel Jeliński -
Juan Lang