Main Page   Class Hierarchy   Alphabetical List   Compound List   Examples  

header.h

00001 /***************************************************************************
00002     copyright            : (C) 2002-2005 by Stefano Barbato
00003     email                : [email protected]
00004 
00005     $Id: header_8h-source.html,v 1.4 2006-03-12 12:28:31 tat Exp $
00006  ***************************************************************************/
00007 
00008 /***************************************************************************
00009  *                                                                         *
00010  *   This program is free software; you can redistribute it and/or modify  *
00011  *   it under the terms of the GNU General Public License as published by  *
00012  *   the Free Software Foundation; either version 2 of the License, or     *
00013  *   (at your option) any later version.                                   *
00014  *                                                                         *
00015  ***************************************************************************/
00016 #ifndef _MIMETIC_HEADER_H_
00017 #define _MIMETIC_HEADER_H_
00018 #include <string>
00019 #include <algorithm>
00020 #include <mimetic/rfc822/header.h>
00021 #include <mimetic/mimeversion.h>
00022 #include <mimetic/contenttype.h>
00023 #include <mimetic/contentid.h>
00024 #include <mimetic/contenttransferencoding.h>
00025 #include <mimetic/contentdisposition.h>
00026 #include <mimetic/contentdescription.h>
00027 
00028 namespace mimetic
00029 {
00030 
00031 /// MIME message header class
00032 struct Header: public Rfc822Header
00033 {
00034     const MimeVersion& mimeVersion() const;
00035     MimeVersion& mimeVersion();
00036     void mimeVersion(const MimeVersion&);
00037 
00038     const ContentType& contentType() const;
00039     ContentType& contentType();
00040     void contentType(const ContentType&);
00041 
00042     const ContentTransferEncoding& contentTransferEncoding() const;
00043     ContentTransferEncoding& contentTransferEncoding();
00044     void contentTransferEncoding(const ContentTransferEncoding&);
00045 
00046     const ContentDisposition& contentDisposition() const;
00047     ContentDisposition& contentDisposition();
00048     void contentDisposition(const ContentDisposition&);
00049 
00050     const ContentDescription& contentDescription() const;
00051     ContentDescription& contentDescription();
00052     void contentDescription(const ContentDescription&);
00053 
00054     const ContentId& contentId() const;
00055     ContentId& contentId();
00056     void contentId(const ContentId&);
00057 };
00058 
00059 }
00060 
00061 #endif