// This file was automatically generated by protocompiler
// DO NOT EDIT!
// Compiled from C2Metric.proto

#import <Foundation/Foundation.h>
#import <ProtocolBuffer/PBCodable.h>

@class SECC2MPError;

#ifdef __cplusplus
#define SECC2MPGENERICEVENTMETRICVALUE_FUNCTION extern "C" __attribute__((visibility("hidden")))
#else
#define SECC2MPGENERICEVENTMETRICVALUE_FUNCTION extern __attribute__((visibility("hidden")))
#endif

__attribute__((visibility("hidden")))
@interface SECC2MPGenericEventMetricValue : PBCodable <NSCopying>
{
    uint64_t _dateValue;
    double _doubleValue;
    SECC2MPError *_errorValue;
    NSString *_stringValue;
    struct {
        int dateValue:1;
        int doubleValue:1;
    } _has;
}


@property (nonatomic, readonly) BOOL hasStringValue;
@property (nonatomic, retain) NSString *stringValue;

@property (nonatomic) BOOL hasDoubleValue;
@property (nonatomic) double doubleValue;

@property (nonatomic) BOOL hasDateValue;
@property (nonatomic) uint64_t dateValue;

@property (nonatomic, readonly) BOOL hasErrorValue;
@property (nonatomic, retain) SECC2MPError *errorValue;

// Performs a shallow copy into other
- (void)copyTo:(SECC2MPGenericEventMetricValue *)other;

// Performs a deep merge from other into self
// If set in other, singular values in self are replaced in self
// Singular composite values are recursively merged
// Repeated values from other are appended to repeated values in self
- (void)mergeFrom:(SECC2MPGenericEventMetricValue *)other;

SECC2MPGENERICEVENTMETRICVALUE_FUNCTION BOOL SECC2MPGenericEventMetricValueReadFrom(__unsafe_unretained SECC2MPGenericEventMetricValue *self, __unsafe_unretained PBDataReader *reader);

@end

