Commit b4b3026b authored by François Grisez's avatar François Grisez

Exports all public functions on Windows

parent 6917ce7c
......@@ -19,12 +19,6 @@
#ifndef belcard_hpp
#define belcard_hpp
#if defined(_MSC_VER)
#define BELCARD_PUBLIC __declspec(dllexport)
#else
#define BELCARD_PUBLIC
#endif
#include "belcard_generic.hpp"
#include "belcard_params.hpp"
#include "belcard_property.hpp"
......@@ -42,6 +36,14 @@
#include <string>
#include <list>
#ifndef BELCARD_PUBLIC
#if defined(_MSC_VER)
#define BELCARD_PUBLIC __declspec(dllexport)
#else
#define BELCARD_PUBLIC
#endif
#endif
using namespace::std;
using namespace::belr;
......@@ -92,7 +94,7 @@ namespace belcard {
list<shared_ptr<BelCardProperty>> _properties;
public:
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC BelCard();
......@@ -247,7 +249,7 @@ namespace belcard {
BELCARD_PUBLIC string& toFoldedString();
BELCARD_PUBLIC bool assertRFCCompliance() const;
virtual void serialize(ostream &output) const;
BELCARD_PUBLIC virtual void serialize(ostream &output) const;
};
class BelCardList : public BelCardGeneric {
......@@ -255,15 +257,15 @@ namespace belcard {
list<shared_ptr<BelCard>> _vCards;
public:
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardList();
BELCARD_PUBLIC BelCardList();
void addCard(const shared_ptr<BelCard> &vcard);
BELCARD_PUBLIC void addCard(const shared_ptr<BelCard> &vcard);
BELCARD_PUBLIC const list<shared_ptr<BelCard>> &getCards() const;
void serialize(ostream &output) const;
BELCARD_PUBLIC void serialize(ostream &output) const;
};
}
#endif
\ No newline at end of file
#endif
......@@ -26,6 +26,14 @@
#include <string>
#include <sstream>
#ifndef BELCARD_PUBLIC
#if defined(_MSC_VER)
#define BELCARD_PUBLIC __declspec(dllexport)
#else
#define BELCARD_PUBLIC
#endif
#endif
using namespace::std;
using namespace::belr;
......@@ -43,36 +51,36 @@ namespace belcard {
public:
BELCARD_PUBLIC static shared_ptr<BelCardAddress> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardAddress();
BELCARD_PUBLIC BelCardAddress();
void setPostOfficeBox(const string &value);
const string &getPostOfficeBox() const;
BELCARD_PUBLIC void setPostOfficeBox(const string &value);
BELCARD_PUBLIC const string &getPostOfficeBox() const;
void setExtendedAddress(const string &value);
const string &getExtendedAddress() const;
BELCARD_PUBLIC void setExtendedAddress(const string &value);
BELCARD_PUBLIC const string &getExtendedAddress() const;
void setStreet(const string &value);
const string &getStreet() const;
BELCARD_PUBLIC void setStreet(const string &value);
BELCARD_PUBLIC const string &getStreet() const;
void setLocality(const string &value);
const string &getLocality() const;
BELCARD_PUBLIC void setLocality(const string &value);
BELCARD_PUBLIC const string &getLocality() const;
void setRegion(const string &value);
const string &getRegion() const;
BELCARD_PUBLIC void setRegion(const string &value);
BELCARD_PUBLIC const string &getRegion() const;
void setPostalCode(const string &value);
const string &getPostalCode() const;
BELCARD_PUBLIC void setPostalCode(const string &value);
BELCARD_PUBLIC const string &getPostalCode() const;
void setCountry(const string &value);
const string &getCountry() const;
BELCARD_PUBLIC void setCountry(const string &value);
BELCARD_PUBLIC const string &getCountry() const;
void setLabelParam(const shared_ptr<BelCardLabelParam> &param);
const shared_ptr<BelCardLabelParam> &getLabelParam() const;
BELCARD_PUBLIC void setLabelParam(const shared_ptr<BelCardLabelParam> &param);
BELCARD_PUBLIC const shared_ptr<BelCardLabelParam> &getLabelParam() const;
virtual void serialize(ostream &output) const;
BELCARD_PUBLIC virtual void serialize(ostream &output) const;
};
}
#endif
\ No newline at end of file
#endif
......@@ -25,6 +25,14 @@
#include <string>
#ifndef BELCARD_PUBLIC
#if defined(_MSC_VER)
#define BELCARD_PUBLIC __declspec(dllexport)
#else
#define BELCARD_PUBLIC
#endif
#endif
using namespace::std;
using namespace::belr;
......@@ -32,26 +40,26 @@ namespace belcard {
class BelCardFBURL : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardFBURL> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardFBURL();
BELCARD_PUBLIC BelCardFBURL();
};
class BelCardCALADRURI : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardCALADRURI> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardCALADRURI();
BELCARD_PUBLIC BelCardCALADRURI();
};
class BelCardCALURI : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardCALURI> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardCALURI();
BELCARD_PUBLIC BelCardCALURI();
};
}
#endif
\ No newline at end of file
#endif
......@@ -26,6 +26,14 @@
#include <string>
#include <sstream>
#ifndef BELCARD_PUBLIC
#if defined(_MSC_VER)
#define BELCARD_PUBLIC __declspec(dllexport)
#else
#define BELCARD_PUBLIC
#endif
#endif
using namespace::std;
using namespace::belr;
......@@ -33,23 +41,23 @@ namespace belcard {
class BelCardPhoneNumber : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardPhoneNumber> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardPhoneNumber();
BELCARD_PUBLIC BelCardPhoneNumber();
};
class BelCardEmail : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardEmail> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardEmail();
BELCARD_PUBLIC BelCardEmail();
};
class BelCardImpp : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardImpp> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC BelCardImpp();
};
......@@ -57,10 +65,10 @@ namespace belcard {
class BelCardLang : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardLang> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardLang();
BELCARD_PUBLIC BelCardLang();
};
}
#endif
\ No newline at end of file
#endif
......@@ -25,6 +25,14 @@
#include <string>
#ifndef BELCARD_PUBLIC
#if defined(_MSC_VER)
#define BELCARD_PUBLIC __declspec(dllexport)
#else
#define BELCARD_PUBLIC
#endif
#endif
using namespace::std;
using namespace::belr;
......@@ -32,47 +40,47 @@ namespace belcard {
class BelCardCategories : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardCategories> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardCategories();
BELCARD_PUBLIC BelCardCategories();
};
class BelCardNote : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardNote> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardNote();
BELCARD_PUBLIC BelCardNote();
};
class BelCardProductId : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardProductId> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardProductId();
BELCARD_PUBLIC BelCardProductId();
};
class BelCardRevision : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardRevision> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardRevision();
BELCARD_PUBLIC BelCardRevision();
};
class BelCardSound : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardSound> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardSound();
BELCARD_PUBLIC BelCardSound();
};
class BelCardUniqueId : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardUniqueId> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC BelCardUniqueId();
};
......@@ -80,18 +88,18 @@ namespace belcard {
class BelCardClientProductIdMap : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardClientProductIdMap> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardClientProductIdMap();
BELCARD_PUBLIC BelCardClientProductIdMap();
};
class BelCardURL : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardURL> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardURL();
BELCARD_PUBLIC BelCardURL();
};
}
#endif
\ No newline at end of file
#endif
......@@ -25,6 +25,14 @@
#include <string>
#ifndef BELCARD_PUBLIC
#if defined(_MSC_VER)
#define BELCARD_PUBLIC __declspec(dllexport)
#else
#define BELCARD_PUBLIC
#endif
#endif
using namespace::std;
using namespace::belr;
......@@ -32,26 +40,26 @@ namespace belcard {
class BelCardKind : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardKind> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardKind();
BELCARD_PUBLIC BelCardKind();
};
class BelCardSource : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardSource> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardSource();
BELCARD_PUBLIC BelCardSource();
};
class BelCardXML : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardXML> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardXML();
BELCARD_PUBLIC BelCardXML();
};
}
#endif
\ No newline at end of file
#endif
......@@ -24,6 +24,14 @@
#include <memory>
#include <sstream>
#ifndef BELCARD_PUBLIC
#if defined(_MSC_VER)
#define BELCARD_PUBLIC __declspec(dllexport)
#else
#define BELCARD_PUBLIC
#endif
#endif
using namespace::std;
namespace belcard {
......@@ -34,17 +42,17 @@ namespace belcard {
return make_shared<T>();
}
BelCardGeneric() { }
virtual ~BelCardGeneric() { } // A virtual destructor enables polymorphism and dynamic casting.
BELCARD_PUBLIC BelCardGeneric() { }
BELCARD_PUBLIC virtual ~BelCardGeneric() { } // A virtual destructor enables polymorphism and dynamic casting.
virtual void serialize(ostream &output) const = 0; // Force heriting classes to define this
BELCARD_PUBLIC virtual void serialize(ostream &output) const = 0; // Force heriting classes to define this
friend ostream &operator<<(ostream &output, const BelCardGeneric &me) {
BELCARD_PUBLIC friend ostream &operator<<(ostream &output, const BelCardGeneric &me) {
me.serialize(output);
return output;
}
virtual string toString() const {
BELCARD_PUBLIC virtual string toString() const {
stringstream output;
output << *this;
return output.str();
......@@ -52,4 +60,4 @@ namespace belcard {
};
}
#endif
\ No newline at end of file
#endif
......@@ -25,6 +25,14 @@
#include <string>
#ifndef BELCARD_PUBLIC
#if defined(_MSC_VER)
#define BELCARD_PUBLIC __declspec(dllexport)
#else
#define BELCARD_PUBLIC
#endif
#endif
using namespace::std;
using namespace::belr;
......@@ -32,18 +40,18 @@ namespace belcard {
class BelCardTimezone : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardTimezone> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardTimezone();
BELCARD_PUBLIC BelCardTimezone();
};
class BelCardGeo : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardGeo> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardGeo();
BELCARD_PUBLIC BelCardGeo();
};
}
#endif
\ No newline at end of file
#endif
......@@ -27,6 +27,14 @@
#include <list>
#include <sstream>
#ifndef BELCARD_PUBLIC
#if defined(_MSC_VER)
#define BELCARD_PUBLIC __declspec(dllexport)
#else
#define BELCARD_PUBLIC
#endif
#endif
using namespace::std;
using namespace::belr;
......@@ -34,7 +42,7 @@ namespace belcard {
class BelCardFullName : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardFullName> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC BelCardFullName();
};
......@@ -49,67 +57,67 @@ namespace belcard {
public:
BELCARD_PUBLIC static shared_ptr<BelCardName> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser) ;
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser) ;
BelCardName();
BELCARD_PUBLIC BelCardName();
void setFamilyName(const string &value);
const string &getFamilyName() const;
BELCARD_PUBLIC void setFamilyName(const string &value);
BELCARD_PUBLIC const string &getFamilyName() const;
void setGivenName(const string &value);
const string &getGivenName() const;
BELCARD_PUBLIC void setGivenName(const string &value);
BELCARD_PUBLIC const string &getGivenName() const;
void setAdditionalName(const string &value);
const string &getAdditionalName() const;
BELCARD_PUBLIC void setAdditionalName(const string &value);
BELCARD_PUBLIC const string &getAdditionalName() const;
void setPrefixes(const string &value);
const string &getPrefixes() const;
BELCARD_PUBLIC void setPrefixes(const string &value);
BELCARD_PUBLIC const string &getPrefixes() const;
void setSuffixes(const string &value);
const string &getSuffixes() const;
BELCARD_PUBLIC void setSuffixes(const string &value);
BELCARD_PUBLIC const string &getSuffixes() const;
virtual void serialize(ostream &output) const;
BELCARD_PUBLIC virtual void serialize(ostream &output) const;
};
class BelCardNickname : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardNickname> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardNickname();
BELCARD_PUBLIC BelCardNickname();
};
class BelCardBirthday : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardBirthday> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardBirthday();
BELCARD_PUBLIC BelCardBirthday();
};
class BelCardAnniversary : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardAnniversary> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardAnniversary();
BELCARD_PUBLIC BelCardAnniversary();
};
class BelCardGender : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardGender> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardGender();
BELCARD_PUBLIC BelCardGender();
};
class BelCardPhoto : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardPhoto> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardPhoto();
BELCARD_PUBLIC BelCardPhoto();
};
}
#endif
\ No newline at end of file
#endif
......@@ -25,6 +25,14 @@
#include <string>
#ifndef BELCARD_PUBLIC
#if defined(_MSC_VER)
#define BELCARD_PUBLIC __declspec(dllexport)
#else
#define BELCARD_PUBLIC
#endif
#endif
using namespace::std;
using namespace::belr;
......@@ -32,31 +40,31 @@ namespace belcard {
class BelCardTitle : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardTitle> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardTitle();
BELCARD_PUBLIC BelCardTitle();
};
class BelCardRole : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardRole> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardRole();
BELCARD_PUBLIC BelCardRole();
};
class BelCardLogo : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardLogo> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardLogo();
BELCARD_PUBLIC BelCardLogo();
};
class BelCardOrganization : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardOrganization> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC BelCardOrganization();
};
......@@ -64,18 +72,18 @@ namespace belcard {
class BelCardMember : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardMember> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardMember();
BELCARD_PUBLIC BelCardMember();
};
class BelCardRelated : public BelCardProperty {
public:
BELCARD_PUBLIC static shared_ptr<BelCardRelated> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardRelated();
BELCARD_PUBLIC BelCardRelated();
};
}
#endif
\ No newline at end of file
#endif
......@@ -27,6 +27,14 @@
#include <string>
#include <sstream>
#ifndef BELCARD_PUBLIC
#if defined(_MSC_VER)
#define BELCARD_PUBLIC __declspec(dllexport)
#else
#define BELCARD_PUBLIC
#endif
#endif
using namespace::std;
using namespace::belr;
......@@ -42,112 +50,112 @@ namespace belcard {
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
static void setAllParamsHandlersAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardParam();
BELCARD_PUBLIC BelCardParam();
virtual void setName(const string &name);
virtual const string &getName() const;
BELCARD_PUBLIC virtual void setName(const string &name);
BELCARD_PUBLIC virtual const string &getName() const;
virtual void setValue(const string &value) ;
virtual const string &getValue() const;
BELCARD_PUBLIC virtual void setValue(const string &value) ;
BELCARD_PUBLIC virtual const string &getValue() const;
virtual void serialize(ostream &output) const;
BELCARD_PUBLIC virtual void serialize(ostream &output) const;
};
class BelCardLanguageParam : public BelCardParam {
public:
static shared_ptr<BelCardLanguageParam> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static shared_ptr<BelCardLanguageParam> parse(const string& input);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BelCardLanguageParam();
BELCARD_PUBLIC BelCardLanguageParam();
};
class BelCardValueParam : public BelCardParam {
public:
static shared_ptr<BelCardValueParam> parse(const string& input);
static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);
BELCARD_PUBLIC static shared_ptr<BelCardValueParam> parse(const string& input);
BELCARD_PUBLIC static void setHandlerAndCollectors(Parser<shared_ptr<BelCardGeneric>> *parser);