/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*\
|                    Copyright Microsoft Corp. 1992-1996                 |
|                        Remote Machine pipe sample                      |
|                                                                        |
|  FILE      :   pipe.idl                                                |
|                                                                        |
|  PURPOSE   :   This file defines the interface for the pipe example    |
|                                                                        |
\*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
[
uuid(60ceb4a0-c2f1-11cf-9556-00aa00374e69),     // UUID
pointer_default(unique),                        // Pointer default
version(1.0)                                    // Interface version
]
interface pipe_sample
{
// Declare the pipe data type. This should also work for UNICODE.
#ifdef _UNICODE
    typedef pipe wchar_t CHAR_PIPE_TYPE;
#else
    typedef pipe unsigned char CHAR_PIPE_TYPE;
#endif

    /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
    /* ScrambleFile - This procedure sends a file from the client to    */
    /*              the server, the server then "encodes" it , and the  */
    /*              file is sent back to the client                     */
    /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
    void ScrambleFile(
        [in] unsigned long Action,              // Encode / Decode
        [in, out] CHAR_PIPE_TYPE *pipe_data);   // The file content
		

    /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
    /* ShutDown	- This procedure sends a message to the server that it  */
    /*          can stop listen for remote procedure calls              */
    /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
    void ShutDown(void);            // Procedure to shut down the server 
}
