3 #ifndef __ARC_SUBMISSIONSTATUS_H__     4 #define __ARC_SUBMISSIONSTATUS_H__    14     static const unsigned int maxValue = (1 << 8) - 1;
    16     enum SubmissionStatusType {
    18       NOT_IMPLEMENTED = 1 << 0,
    20       ENDPOINT_NOT_QUERIED = 1 << 2,
    21       BROKER_PLUGIN_NOT_LOADED = 1 << 3,
    22       DESCRIPTION_NOT_SUBMITTED = 1 << 4,
    23       SUBMITTER_PLUGIN_NOT_LOADED = 1 << 5, 
    24       AUTHENTICATION_ERROR = 1 << 6,
    25       ERROR_FROM_ENDPOINT = 1 << 7
    33     SubmissionStatus& operator|=(SubmissionStatusType s) { status |= s; 
return *
this; }
    35     SubmissionStatus& operator|=(
unsigned int s) { status |= (s & maxValue); 
return *
this; }
    37     SubmissionStatus operator|(SubmissionStatusType s)
 const { 
return (status | s); }
    39     SubmissionStatus operator|(
unsigned int s)
 const { 
return (status | (s & maxValue)); }
    41     SubmissionStatus& operator&=(SubmissionStatusType s) { status &= s; 
return *
this; }
    45     SubmissionStatus operator&(SubmissionStatusType s)
 const { 
return (status & s); }
    49     SubmissionStatus& operator=(SubmissionStatusType s) { status = s; 
return *
this; }
    50     SubmissionStatus& operator=(
unsigned int s) { status = (s & maxValue); 
return *
this; }
    52     operator bool()
 const { 
return status == NONE; }
    54     bool operator==(
const SubmissionStatus& s)
 const { 
return status == s.status; }
    55     bool operator==(SubmissionStatusType s)
 const { 
return status == (
unsigned int)s; }
    56     bool operator==(
unsigned int s)
 const { 
return status == s; }
    60     bool operator!=(SubmissionStatusType s)
 const { 
return !operator==(s); }
    61     bool operator!=(
unsigned int s)
 const { 
return !operator==(s); }
    63     bool isSet(SubmissionStatusType s)
 const { 
return (s & status) == (
unsigned int)s; }
    64     void unset(SubmissionStatusType s) { status &= (~s); }
    70   inline bool operator==(SubmissionStatus::SubmissionStatusType a, 
const SubmissionStatus& b) { 
return (
unsigned int)a == b.status; }
    73 #endif // __ARC_SUBMISSIONSTATUS_H__ Arc namespace contains all core ARC classes. 
Definition: ArcConfig.h:11
 
Definition: SubmissionStatus.h:12