Portability Libraries  2015.2.0.0
Common Methods and Objects for Platform Independance.
vcard_mailer.hpp
Go to the documentation of this file.
1 //
2 // BEGIN_DOUGLAS_MARK_ROYER_COPYRIGHT
3 //
4 // NOTICE:
5 //
6 // THIS SOURCE CODE BELONGS TO DOUGLAS MARK ROYER
7 // THIS CODE IS CONSIDERED A
8 // TRADE SECRET AND IS NOT TO BE DIVULGED OR USED BY PARTIES WHO HAVE
9 // NOT RECEIVED WRITTEN AUTHORIZATION FROM THE OWNER.
10 //
11 // THIS SOFTWARE AND MANUAL ARE BOTH PROTECTED BY UNITED STATES
12 // COPYRIGHT LAW (TITLE 17 UNITED STATES CODE). UNAUTHORIZED REPRODUCTION
13 // AND/OR SALE MAY RESULT IN IMPRISONMENT OF UP TO ONE YEAR AND FINES
14 // OF UP TO $100,000 (17 USC 506). COPYRIGHT INFRINGERS MAY ALSO
15 // BE SUBJECT TO CIVIL LIABILITY.
16 //
17 // THIS NOTICE AND THE ABOVE COPYRIGHT NOTICE MUST REMAIN IN ALL
18 // COPIES AND ANY DERIVED WORK.
19 //
20 // ALL OF THIS CODE IS ORIGINAL WORK BY THE COPYRIGHT HOLDER.
21 //
22 // THIS DOCUMENT AND THE INFORMATION CONTAINED HEREIN IS
23 // PROVIDED ON AN "AS IS" BASIS AND INET-CONSULTING.COM, INC.
24 // DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT
25 // NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
26 // HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
27 // WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR
28 // PURPOSE. ANY SERVICE CONTRACT WILL BE UNDER A SEPARATE
29 // LICENSE.
30 //
31 // END_DOUGLAS_MARK_ROYER_COPYRIGHT
32 //
33 
34 /**
35  * @author Doug Royer / SoftwareAndServices
36  * @file
37  * This is a class and interfaces in C and C++ that represents vcard MAILER
38  * property. It is designed to be compatible with RFC-iCalendar, RFC-iTIP, RFC-iMIP,
39  * CAP, and current WebDAV and CalDAV calendars.
40  */
41 #ifndef __DOUGLAS_MARK_ROYER_LIBRARY_VCARD_mailer_HPP__
42 #define __DOUGLAS_MARK_ROYER_LIBRARY_VCARD_mailer_HPP__
43 
44 #ifndef EXPORT_ICALENDAR
45 #ifdef BUILDING_LIBRARY_ICALENDAR
46 #define EXPORT_ICALENDAR EXPORT_OUT
47 #else
48 #define EXPORT_ICALENDAR EXPORT_IN
49 #endif
50 #endif
51 
52 #ifdef BUILDING_LIBRARY_ICALENDAR
53 #include "vcard.hpp"
54 #include "iCalendar.hpp"
55 #include "text_property.hpp"
56 #else
57 #include <SaS/iCalendar/vcard.hpp>
58 #include <SaS/iCalendar/iCalendar.hpp>
59 #include <SaS/iCalendar/text_property.hpp>
60 #endif
61 
62 using namespace std;
66 
67 namespace SoftwareAndServices
68 {
69  namespace Library
70  {
71  namespace vCard
72  {
73 
74  /**
75  * @class mailer
76  * An RFC-iCalendar implementation of MAILER property.
77  */
78  class EXPORT_ICALENDAR mailer
79  : public text_property
80  {
81 
82  public:
83 
84  /**
85  * mailer Constructor.
86  */
87  mailer();
88 
89  /**
90  * mailer Constructor.
91  *
92  * @param Value The initial value.
93  */
94  mailer(const char * Value);
95 
96  /**
97  * mailer Constructor.
98  *
99  * @param Value The initial value.
100  */
101  mailer(const text * Value);
102 
103  /**
104  * mailer Destructor.
105  */
106  virtual ~mailer();
107 
108  };
109 
110  /**
111  * @typedef mailerVec
112  * An array of mailer.
113  */
114  typedef vector<mailer*> mailerVec;
115 
116  }
117  }
118 }
119 
120 #endif /*__DOUGLAS_MARK_ROYER_LIBRARY_VCARD_mailer_HPP__*/
STL namespace.