4 * X.224 protocol handler
8 * Copyright (c) 1998-2000 Equivalence Pty. Ltd.
10 * The contents of this file are subject to the Mozilla Public License
11 * Version 1.0 (the "License"); you may not use this file except in
12 * compliance with the License. You may obtain a copy of the License at
13 * http://www.mozilla.org/MPL/
15 * Software distributed under the License is distributed on an "AS IS"
16 * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
17 * the License for the specific language governing rights and limitations
20 * The Original Code is Open H323 Library.
22 * The Initial Developer of the Original Code is Equivalence Pty. Ltd.
24 * Contributor(s): ______________________________________.
27 * Revision 1.10 2002/09/16 01:14:15 robertj
28 * Added #define so can select if #pragma interface/implementation is used on
29 * platform basis (eg MacOS) rather than compiler, thanks Robert Monaghan.
31 * Revision 1.9 2002/09/03 06:19:37 robertj
32 * Normalised the multi-include header prevention ifdef/define symbol.
34 * Revision 1.8 2002/08/05 10:03:47 robertj
35 * Cosmetic changes to normalise the usage of pragma interface/implementation.
37 * Revision 1.7 2001/02/09 05:16:24 robertj
38 * Added #pragma interface for GNU C++.
40 * Revision 1.6 2000/05/18 11:53:35 robertj
41 * Changes to support doc++ documentation generation.
43 * Revision 1.5 2000/05/02 04:32:25 robertj
44 * Fixed copyright notice comment.
46 * Revision 1.4 1999/08/31 13:30:20 robertj
47 * Added gatekeeper support.
49 * Revision 1.3 1999/06/09 05:26:20 robertj
50 * Major restructuring of classes.
52 * Revision 1.2 1999/01/16 11:31:47 robertj
53 * Fixed name in header comment.
55 * Revision 1.1 1998/12/14 09:13:51 robertj
68 #include <ptlib/sockets.h>
72 ///////////////////////////////////////////////////////////////////////////////
74 /**This class embodies X.224 Class Zero Protocol Data Unit.
76 class X224 : public PObject
78 PCLASSINFO(X224, PObject)
82 ConnectRequest = 0xe0,
83 ConnectConfirm = 0xd0,
89 void BuildConnectRequest();
90 void BuildConnectConfirm();
91 void BuildData(const PBYTEArray & data);
93 void PrintOn(ostream & strm) const;
94 BOOL Decode(const PBYTEArray & rawData);
95 BOOL Encode(PBYTEArray & rawData) const;
97 int GetCode() const { return header[0]; }
98 const PBYTEArray & GetData() const { return data; }
106 #endif // __OPAL_X224_H
109 /////////////////////////////////////////////////////////////////////////////