extneg.h

00001 /*
00002 **
00003 ** Author: Andrew Hewett, medigration GmbH
00004 **
00005 ** Module: extneg.h
00006 **
00007 ** Purpose:
00008 **   Extended Negotiation for A-ASSOCIATE
00009 **
00010 ** Last Update:         $Author: meichel $
00011 ** Update Date:         $Date: 2005/12/08 16:02:24 $
00012 ** Source File:         $Source: /share/dicom/cvs-depot/dcmtk/dcmnet/include/dcmtk/dcmnet/extneg.h,v $
00013 ** CVS/RCS Revision:    $Revision: 1.3 $
00014 ** Status:              $State: Exp $
00015 **
00016 ** CVS/RCS Log at end of file
00017 **
00018 */
00019 
00020 #ifndef EXTNEG_H
00021 #define EXTNEG_H
00022 
00023 #include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
00024 
00025 #include "dcmtk/ofstd/ofstring.h"
00026 #include "dcmtk/ofstd/oflist.h"
00027 
00028 #define DUL_TYPESOPCLASSEXTENDEDNEGOTIATION (unsigned char)0x56
00029 
00030 
00031 struct SOPClassExtendedNegotiationSubItem {
00032     unsigned char itemType;
00033     unsigned char reserved1;
00034     unsigned short itemLength;
00035     unsigned short sopClassUIDLength;
00036     OFString sopClassUID;
00037     unsigned char* serviceClassAppInfo;
00038     unsigned short serviceClassAppInfoLength;
00039 
00040     SOPClassExtendedNegotiationSubItem()
00041     : itemType(0x56)
00042     , reserved1(0)
00043     , itemLength(0)
00044     , sopClassUIDLength(0)
00045     , sopClassUID()
00046     , serviceClassAppInfo(NULL)
00047     , serviceClassAppInfoLength(0)
00048     {
00049     }
00050 
00051 private:
00052     // private undefined copy constructor and operator=
00053     SOPClassExtendedNegotiationSubItem(const SOPClassExtendedNegotiationSubItem& arg);
00054     SOPClassExtendedNegotiationSubItem& operator= (const SOPClassExtendedNegotiationSubItem& arg);
00055 };
00056 
00057 typedef OFList<SOPClassExtendedNegotiationSubItem*> SOPClassExtendedNegotiationSubItemList;
00058 
00059 void appendList(const SOPClassExtendedNegotiationSubItemList& from, SOPClassExtendedNegotiationSubItemList& to);
00060 
00061 void deleteListMembers(SOPClassExtendedNegotiationSubItemList& lst);
00062 
00063 #endif
00064 
00065 /*
00066 ** CVS/RCS Log:
00067 ** $Log: extneg.h,v $
00068 ** Revision 1.3  2005/12/08 16:02:24  meichel
00069 ** Changed include path schema for all DCMTK header files
00070 **
00071 ** Revision 1.2  2003/06/02 16:44:11  meichel
00072 ** Renamed local variables to avoid name clashes with STL
00073 **
00074 ** Revision 1.1  1999/04/19 08:39:55  meichel
00075 ** Added experimental support for extended SOP class negotiation.
00076 **
00077 **
00078 */


Generated on 20 Dec 2005 for OFFIS DCMTK Version 3.5.4 by Doxygen 1.4.5