Module:    Win32-DDE
Copyright:    Original Code is Copyright (c) 1995-2004 Functional Objects, Inc.
              All rights reserved.
License:      See License.txt in this distribution for details.
Warranty:     Distributed WITHOUT WARRANTY OF ANY KIND

// This file is automatically generated from "dde.h"; do not edit.


// Adapted from:
/*****************************************************************************\
*                                                                             *
* dde.h -       Dynamic Data Exchange structures and definitions              *
*                                                                             *
* 
*                                                                             *
\*****************************************************************************/
define inline-only constant $WM-DDE-FIRST               = #x03E0;
define inline-only constant $WM-DDE-INITIATE            =
	$WM-DDE-FIRST;
define inline-only constant $WM-DDE-TERMINATE           =
	$WM-DDE-FIRST + 1;
define inline-only constant $WM-DDE-ADVISE              =
	$WM-DDE-FIRST + 2;
define inline-only constant $WM-DDE-UNADVISE            =
	$WM-DDE-FIRST + 3;
define inline-only constant $WM-DDE-ACK                 =
	$WM-DDE-FIRST + 4;
define inline-only constant $WM-DDE-DATA                =
	$WM-DDE-FIRST + 5;
define inline-only constant $WM-DDE-REQUEST             =
	$WM-DDE-FIRST + 6;
define inline-only constant $WM-DDE-POKE                =
	$WM-DDE-FIRST + 7;
define inline-only constant $WM-DDE-EXECUTE             =
	$WM-DDE-FIRST + 8;
define inline-only constant $WM-DDE-LAST                =
	$WM-DDE-FIRST + 8;

define C-struct <DDEACK>
  bitfield slot bAppReturnCode-value :: <C-unsigned-short>, width: 8;
  bitfield slot reserved       :: <C-unsigned-short>, width: 6;
  bitfield slot fBusy-value    :: <C-unsigned-short>, width: 1;
  bitfield slot fAck-value     :: <C-unsigned-short>, width: 1;
  pointer-type-name: <LPDDEACK>;
end C-struct <DDEACK>;

define C-struct <DDEADVISE>
  bitfield slot reserved       :: <C-unsigned-short>, width: 14;
  bitfield slot fDeferUpd-value :: <C-unsigned-short>, width: 1;
  bitfield slot fAckReq-value  :: <C-unsigned-short>, width: 1;
  inline-only slot cfFormat-value  :: <C-short>;
  pointer-type-name: <LPDDEADVISE>;
end C-struct <DDEADVISE>;

define C-struct <DDEDATA>
  bitfield slot unused         :: <C-unsigned-short>, width: 12;
  bitfield slot fResponse-value :: <C-unsigned-short>, width: 1;
  bitfield slot fRelease-value :: <C-unsigned-short>, width: 1;
  bitfield slot reserved       :: <C-unsigned-short>, width: 1;
  bitfield slot fAckReq-value  :: <C-unsigned-short>, width: 1;
  inline-only slot cfFormat-value  :: <C-short>;
  array slot Value-array           :: <C-BYTE>, length: 1,
	address-getter: Value-value;
  pointer-type-name: <LPDDEDATA>;
end C-struct <DDEDATA>;

define C-struct <DDEPOKE>
  bitfield slot unused         :: <C-unsigned-short>, width: 13;
  bitfield slot fRelease-value :: <C-unsigned-short>, width: 1;
  bitfield slot fReserved      :: <C-unsigned-short>, width: 2;
  inline-only slot cfFormat-value  :: <C-short>;
  array slot Value-array           :: <C-BYTE>, length: 1,
	address-getter: Value-value;
  pointer-type-name: <LPDDEPOKE>;
end C-struct <DDEPOKE>;

define C-struct <DDELN>
  bitfield slot unused         :: <C-unsigned-short>, width: 13;
  bitfield slot fRelease-value :: <C-unsigned-short>, width: 1;
  bitfield slot fDeferUpd-value :: <C-unsigned-short>, width: 1;
  bitfield slot fAckReq-value  :: <C-unsigned-short>, width: 1;
  inline-only slot cfFormat-value  :: <C-short>;
  pointer-type-name: <LPDDELN>;
end C-struct <DDELN>;

define C-struct <DDEUP>
  bitfield slot unused         :: <C-unsigned-short>, width: 12;
  bitfield slot fAck-value     :: <C-unsigned-short>, width: 1;
  bitfield slot fRelease-value :: <C-unsigned-short>, width: 1;
  bitfield slot fReserved      :: <C-unsigned-short>, width: 1;
  bitfield slot fAckReq-value  :: <C-unsigned-short>, width: 1;
  inline-only slot cfFormat-value  :: <C-short>;
  array slot rgb-array             :: <C-BYTE>, length: 1,
	address-getter: rgb-value;
  pointer-type-name: <LPDDEUP>;
end C-struct <DDEUP>;

define inline-only C-function ImpersonateDdeClientWindow
  parameter hWndClient :: <HWND>;
  parameter hWndServer :: <HWND>;
  result value :: <BOOL>;
  c-name: "ImpersonateDdeClientWindow", c-modifiers: "__stdcall";
end;

define inline-only C-function PackDDElParam
  parameter msg        :: <UINT>;
  parameter uiLo       :: <UINT>;
  parameter uiHi       :: <UINT>;
  result value :: <LONG>;
  c-name: "PackDDElParam", c-modifiers: "__stdcall";
end;

define inline-only C-function UnpackDDElParam
  parameter msg        :: <UINT>;
  parameter lParam     :: <LONG>;
  output parameter puiLo :: <PUINT>;
  output parameter puiHi :: <PUINT>;
  result value :: <BOOL>;
  c-name: "UnpackDDElParam", c-modifiers: "__stdcall";
end;

define inline-only C-function FreeDDElParam
  parameter msg        :: <UINT>;
  parameter lParam     :: <LONG>;
  result value :: <BOOL>;
  c-name: "FreeDDElParam", c-modifiers: "__stdcall";
end;

define inline-only C-function ReuseDDElParam
  parameter lParam     :: <LONG>;
  parameter msgIn      :: <UINT>;
  parameter msgOut     :: <UINT>;
  parameter uiLo       :: <UINT>;
  parameter uiHi       :: <UINT>;
  result value :: <LONG>;
  c-name: "ReuseDDElParam", c-modifiers: "__stdcall";
end;

