RTBKit  0.9
Open-source framework to create real-time ad bidding systems.
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator
Classes | Public Types | Public Member Functions | Public Attributes
Datacratic::ValueDescription Struct Reference

#include <value_description.h>

Inheritance diagram for Datacratic::ValueDescription:
Datacratic::ValueDescriptionT< T > Datacratic::ValueDescriptionT< Amount > Datacratic::ValueDescriptionT< bool > Datacratic::ValueDescriptionT< CurrencyCode > Datacratic::ValueDescriptionT< CurrencyPool > Datacratic::ValueDescriptionT< Datacratic::Id > Datacratic::ValueDescriptionT< Date > Datacratic::ValueDescriptionT< double > Datacratic::ValueDescriptionT< Enum > Datacratic::ValueDescriptionT< float > Datacratic::ValueDescriptionT< FormatSet > Datacratic::ValueDescriptionT< int > Datacratic::ValueDescriptionT< Json::Value > Datacratic::ValueDescriptionT< LineItems > Datacratic::ValueDescriptionT< OpenRTB::AdPosition > Datacratic::ValueDescriptionT< OpenRTB::ApiFramework > Datacratic::ValueDescriptionT< OpenRTB::App > Datacratic::ValueDescriptionT< OpenRTB::AuctionType > Datacratic::ValueDescriptionT< OpenRTB::Banner > Datacratic::ValueDescriptionT< OpenRTB::BannerAdType > Datacratic::ValueDescriptionT< OpenRTB::Bid > Datacratic::ValueDescriptionT< OpenRTB::BidRequest > Datacratic::ValueDescriptionT< OpenRTB::BidResponse > Datacratic::ValueDescriptionT< OpenRTB::ConnectionType > Datacratic::ValueDescriptionT< OpenRTB::Content > Datacratic::ValueDescriptionT< OpenRTB::ContentCategory > Datacratic::ValueDescriptionT< OpenRTB::ContentContext > Datacratic::ValueDescriptionT< OpenRTB::ContentDeliveryMethod > Datacratic::ValueDescriptionT< OpenRTB::Context > Datacratic::ValueDescriptionT< OpenRTB::CreativeAttribute > Datacratic::ValueDescriptionT< OpenRTB::Data > Datacratic::ValueDescriptionT< OpenRTB::Device > Datacratic::ValueDescriptionT< OpenRTB::DeviceType > Datacratic::ValueDescriptionT< OpenRTB::ExpandableDirection > Datacratic::ValueDescriptionT< OpenRTB::FramePosition > Datacratic::ValueDescriptionT< OpenRTB::Geo > Datacratic::ValueDescriptionT< OpenRTB::Impression > Datacratic::ValueDescriptionT< OpenRTB::List< int > > Datacratic::ValueDescriptionT< OpenRTB::List< T > > Datacratic::ValueDescriptionT< OpenRTB::LocationType > Datacratic::ValueDescriptionT< OpenRTB::MediaRating > Datacratic::ValueDescriptionT< OpenRTB::MimeType > Datacratic::ValueDescriptionT< OpenRTB::Optional< T > > Datacratic::ValueDescriptionT< OpenRTB::Publisher > Datacratic::ValueDescriptionT< OpenRTB::SeatBid > Datacratic::ValueDescriptionT< OpenRTB::Segment > Datacratic::ValueDescriptionT< OpenRTB::Site > Datacratic::ValueDescriptionT< OpenRTB::SourceRelationship > Datacratic::ValueDescriptionT< OpenRTB::TaggedBool > Datacratic::ValueDescriptionT< OpenRTB::TaggedBoolDef< defValue > > Datacratic::ValueDescriptionT< OpenRTB::TaggedFloat > Datacratic::ValueDescriptionT< OpenRTB::TaggedFloatDef< num, den > > Datacratic::ValueDescriptionT< OpenRTB::TaggedInt > Datacratic::ValueDescriptionT< OpenRTB::TaggedIntDef< defValue > > Datacratic::ValueDescriptionT< OpenRTB::User > Datacratic::ValueDescriptionT< OpenRTB::VastCompanionType > Datacratic::ValueDescriptionT< OpenRTB::Video > Datacratic::ValueDescriptionT< OpenRTB::VideoBidResponseProtocol > Datacratic::ValueDescriptionT< OpenRTB::VideoLinearity > Datacratic::ValueDescriptionT< OpenRTB::VideoPlaybackMethod > Datacratic::ValueDescriptionT< OpenRTB::VideoQuality > Datacratic::ValueDescriptionT< OpenRTB::VideoStartDelay > Datacratic::ValueDescriptionT< RTBKIT::AdSpot > Datacratic::ValueDescriptionT< RTBKIT::BidRequest > Datacratic::ValueDescriptionT< RTBKIT::Format > Datacratic::ValueDescriptionT< RTBKIT::Location > Datacratic::ValueDescriptionT< SegmentsBySource > Datacratic::ValueDescriptionT< std::string > Datacratic::ValueDescriptionT< std::unique_ptr< T > > Datacratic::ValueDescriptionT< std::vector< T > > Datacratic::ValueDescriptionT< Struct > Datacratic::ValueDescriptionT< Url > Datacratic::ValueDescriptionT< UserIds > Datacratic::ValueDescriptionT< Utf8String >

List of all members.

Classes

struct  FieldDescription

Public Types

typedef std::true_type defined

Public Member Functions

 ValueDescription (ValueKind kind, const std::type_info *type, const std::string &typeName="")
virtual void parseJson (void *val, JsonParsingContext &context) const =0
virtual void printJson (const void *val, JsonPrintingContext &context) const =0
virtual bool isDefault (const void *val) const =0
virtual void setDefault (void *val) const =0
virtual void copyValue (const void *from, void *to) const =0
virtual void moveValue (void *from, void *to) const =0
virtual void swapValues (void *from, void *to) const =0
virtual void * optionalMakeValue (void *val) const
virtual const void * optionalGetValue (const void *val) const
virtual size_t getArrayLength (void *val) const
virtual void * getArrayElement (void *val, uint32_t element) const
virtual const void * getArrayElement (const void *val, uint32_t element) const
virtual void setArrayLength (void *val, size_t newLength) const
virtual const ValueDescriptioncontained () const
virtual void convertAndCopy (const void *from, const ValueDescription &fromDesc, void *to) const
virtual size_t getFieldCount (const void *val) const
virtual const FieldDescriptionhasField (const void *val, const std::string &name) const
virtual void forEachField (const void *val, const std::function< void(const FieldDescription &)> &onField) const
virtual const FieldDescriptiongetField (const std::string &field) const

Public Attributes

ValueKind kind
const std::type_info *const type
const std::string typeName
JSConvertersjsConverters
bool jsConvertersInitialized

Detailed Description

Value Description

This describes the content of a C++ structure and allows it to be manipulated programatically.

Definition at line 58 of file value_description.h.


The documentation for this struct was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator