// Copyright (C) 2021 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only #ifndef OPCUASTATUS_P_H #define OPCUASTATUS_P_H #include #include #include #include #include // // W A R N I N G // ------------- // // This file is not part of the Qt API. It exists purely as an // implementation detail. This header file may change from version to // version without notice, or even be removed. // // We mean it. // QT_BEGIN_NAMESPACE class OpcUaConnection; class OpcUaStatus { Q_GADGET Q_PROPERTY(bool isGood READ isGood) Q_PROPERTY(bool isBad READ isBad) Q_PROPERTY(Status status READ status) // This is a value type. Thus lowercase. The enums are taken care of below QML_VALUE_TYPE(status) QML_ADDED_IN_VERSION(5, 13) public: enum class Status { Good = 0x0000, Uncertain = 0x4000, Bad = 0x8000, BadUnexpectedError = 0x8001, BadInternalError = 0x8002, BadOutOfMemory = 0x8003, BadResourceUnavailable = 0x8004, BadCommunicationError = 0x8005, BadEncodingError = 0x8006, BadDecodingError = 0x8007, BadEncodingLimitsExceeded = 0x8008, BadRequestTooLarge = 0x80B8, BadResponseTooLarge = 0x80B9, BadUnknownResponse = 0x8009, BadTimeout = 0x800A, BadServiceUnsupported = 0x800B, BadShutdown = 0x800C, BadServerNotConnected = 0x800D, BadServerHalted = 0x800E, BadNothingToDo = 0x800F, BadTooManyOperations = 0x8010, BadTooManyMonitoredItems = 0x80DB, BadDataTypeIdUnknown = 0x8011, BadCertificateInvalid = 0x8012, BadSecurityChecksFailed = 0x8013, BadCertificatePolicyCheckFailed = 0x8114, BadCertificateTimeInvalid = 0x8014, BadCertificateIssuerTimeInvalid = 0x8015, BadCertificateHostNameInvalid = 0x8016, BadCertificateUriInvalid = 0x8017, BadCertificateUseNotAllowed = 0x8018, BadCertificateIssuerUseNotAllowed = 0x8019, BadCertificateUntrusted = 0x801A, BadCertificateRevocationUnknown = 0x801B, BadCertificateIssuerRevocationUnknown = 0x801C, BadCertificateRevoked = 0x801D, BadCertificateIssuerRevoked = 0x801E, BadCertificateChainIncomplete = 0x810D, BadUserAccessDenied = 0x801F, BadIdentityTokenInvalid = 0x8020, BadIdentityTokenRejected = 0x8021, BadSecureChannelIdInvalid = 0x8022, BadInvalidTimestamp = 0x8023, BadNonceInvalid = 0x8024, BadSessionIdInvalid = 0x8025, BadSessionClosed = 0x8026, BadSessionNotActivated = 0x8027, BadSubscriptionIdInvalid = 0x8028, BadRequestHeaderInvalid = 0x802A, BadTimestampsToReturnInvalid = 0x802B, BadRequestCancelledByClient = 0x802C, BadTooManyArguments = 0x80E5, BadLicenseExpired = 0x810E, BadLicenseLimitsExceeded = 0x810F, BadLicenseNotAvailable = 0x8110, GoodSubscriptionTransferred = 0x002D, GoodCompletesAsynchronously = 0x002E, GoodOverload = 0x002F, GoodClamped = 0x0030, BadNoCommunication = 0x8031, BadWaitingForInitialData = 0x8032, BadNodeIdInvalid = 0x8033, BadNodeIdUnknown = 0x8034, BadAttributeIdInvalid = 0x8035, BadIndexRangeInvalid = 0x8036, BadIndexRangeNoData = 0x8037, BadDataEncodingInvalid = 0x8038, BadDataEncodingUnsupported = 0x8039, BadNotReadable = 0x803A, BadNotWritable = 0x803B, BadOutOfRange = 0x803C, BadNotSupported = 0x803D, BadNotFound = 0x803E, BadObjectDeleted = 0x803F, BadNotImplemented = 0x8040, BadMonitoringModeInvalid = 0x8041, BadMonitoredItemIdInvalid = 0x8042, BadMonitoredItemFilterInvalid = 0x8043, BadMonitoredItemFilterUnsupported = 0x8044, BadFilterNotAllowed = 0x8045, BadStructureMissing = 0x8046, BadEventFilterInvalid = 0x8047, BadContentFilterInvalid = 0x8048, BadFilterOperatorInvalid = 0x80C1, BadFilterOperatorUnsupported = 0x80C2, BadFilterOperandCountMismatch = 0x80C3, BadFilterOperandInvalid = 0x8049, BadFilterElementInvalid = 0x80C4, BadFilterLiteralInvalid = 0x80C5, BadContinuationPointInvalid = 0x804A, BadNoContinuationPoints = 0x804B, BadReferenceTypeIdInvalid = 0x804C, BadBrowseDirectionInvalid = 0x804D, BadNodeNotInView = 0x804E, BadNumericOverflow = 0x8112, BadServerUriInvalid = 0x804F, BadServerNameMissing = 0x8050, BadDiscoveryUrlMissing = 0x8051, BadSempahoreFileMissing = 0x8052, BadRequestTypeInvalid = 0x8053, BadSecurityModeRejected = 0x8054, BadSecurityPolicyRejected = 0x8055, BadTooManySessions = 0x8056, BadUserSignatureInvalid = 0x8057, BadApplicationSignatureInvalid = 0x8058, BadNoValidCertificates = 0x8059, BadIdentityChangeNotSupported = 0x80C6, BadRequestCancelledByRequest = 0x805A, BadParentNodeIdInvalid = 0x805B, BadReferenceNotAllowed = 0x805C, BadNodeIdRejected = 0x805D, BadNodeIdExists = 0x805E, BadNodeClassInvalid = 0x805F, BadBrowseNameInvalid = 0x8060, BadBrowseNameDuplicated = 0x8061, BadNodeAttributesInvalid = 0x8062, BadTypeDefinitionInvalid = 0x8063, BadSourceNodeIdInvalid = 0x8064, BadTargetNodeIdInvalid = 0x8065, BadDuplicateReferenceNotAllowed = 0x8066, BadInvalidSelfReference = 0x8067, BadReferenceLocalOnly = 0x8068, BadNoDeleteRights = 0x8069, UncertainReferenceNotDeleted = 0x40BC, BadServerIndexInvalid = 0x806A, BadViewIdUnknown = 0x806B, BadViewTimestampInvalid = 0x80C9, BadViewParameterMismatch = 0x80CA, BadViewVersionInvalid = 0x80CB, UncertainNotAllNodesAvailable = 0x40C0, GoodResultsMayBeIncomplete = 0x00BA, BadNotTypeDefinition = 0x80C8, UncertainReferenceOutOfServer = 0x406C, BadTooManyMatches = 0x806D, BadQueryTooComplex = 0x806E, BadNoMatch = 0x806F, BadMaxAgeInvalid = 0x8070, BadSecurityModeInsufficient = 0x80E6, BadHistoryOperationInvalid = 0x8071, BadHistoryOperationUnsupported = 0x8072, BadInvalidTimestampArgument = 0x80BD, BadWriteNotSupported = 0x8073, BadTypeMismatch = 0x8074, BadMethodInvalid = 0x8075, BadArgumentsMissing = 0x8076, BadNotExecutable = 0x8111, BadTooManySubscriptions = 0x8077, BadTooManyPublishRequests = 0x8078, BadNoSubscription = 0x8079, BadSequenceNumberUnknown = 0x807A, GoodRetransmissionQueueNotSupported = 0x00DF, BadMessageNotAvailable = 0x807B, BadInsufficientClientProfile = 0x807C, BadStateNotActive = 0x80BF, BadAlreadyExists = 0x8115, BadTcpServerTooBusy = 0x807D, BadTcpMessageTypeInvalid = 0x807E, BadTcpSecureChannelUnknown = 0x807F, BadTcpMessageTooLarge = 0x8080, BadTcpNotEnoughResources = 0x8081, BadTcpInternalError = 0x8082, BadTcpEndpointUrlInvalid = 0x8083, BadRequestInterrupted = 0x8084, BadRequestTimeout = 0x8085, BadSecureChannelClosed = 0x8086, BadSecureChannelTokenUnknown = 0x8087, BadSequenceNumberInvalid = 0x8088, BadProtocolVersionUnsupported = 0x80BE, BadConfigurationError = 0x8089, BadNotConnected = 0x808A, BadDeviceFailure = 0x808B, BadSensorFailure = 0x808C, BadOutOfService = 0x808D, BadDeadbandFilterInvalid = 0x808E, UncertainNoCommunicationLastUsableValue = 0x408F, UncertainLastUsableValue = 0x4090, UncertainSubstituteValue = 0x4091, UncertainInitialValue = 0x4092, UncertainSensorNotAccurate = 0x4093, UncertainEngineeringUnitsExceeded = 0x4094, UncertainSubNormal = 0x4095, GoodLocalOverride = 0x0096, BadRefreshInProgress = 0x8097, BadConditionAlreadyDisabled = 0x8098, BadConditionAlreadyEnabled = 0x80CC, BadConditionDisabled = 0x8099, BadEventIdUnknown = 0x809A, BadEventNotAcknowledgeable = 0x80BB, BadDialogNotActive = 0x80CD, BadDialogResponseInvalid = 0x80CE, BadConditionBranchAlreadyAcked = 0x80CF, BadConditionBranchAlreadyConfirmed = 0x80D0, BadConditionAlreadyShelved = 0x80D1, BadConditionNotShelved = 0x80D2, BadShelvingTimeOutOfRange = 0x80D3, BadNoData = 0x809B, BadBoundNotFound = 0x80D7, BadBoundNotSupported = 0x80D8, BadDataLost = 0x809D, BadDataUnavailable = 0x809E, BadEntryExists = 0x809F, BadNoEntryExists = 0x80A0, BadTimestampNotSupported = 0x80A1, GoodEntryInserted = 0x00A2, GoodEntryReplaced = 0x00A3, UncertainDataSubNormal = 0x40A4, GoodNoData = 0x00A5, GoodMoreData = 0x00A6, BadAggregateListMismatch = 0x80D4, BadAggregateNotSupported = 0x80D5, BadAggregateInvalidInputs = 0x80D6, BadAggregateConfigurationRejected = 0x80DA, GoodDataIgnored = 0x00D9, BadRequestNotAllowed = 0x80E4, BadRequestNotComplete = 0x8113, BadTicketRequired = 0x811F, BadTicketInvalid = 0x8120, GoodEdited = 0x00DC, GoodPostActionFailed = 0x00DD, UncertainDominantValueChanged = 0x40DE, GoodDependentValueChanged = 0x00E0, BadDominantValueChanged = 0x80E1, UncertainDependentValueChanged = 0x40E2, BadDependentValueChanged = 0x80E3, GoodEdited_DependentValueChanged = 0x0116, GoodEdited_DominantValueChanged = 0x0117, GoodEdited_DominantValueChanged_DependentValueChanged = 0x0118, BadEdited_OutOfRange = 0x8119, BadInitialValue_OutOfRange = 0x811A, BadOutOfRange_DominantValueChanged = 0x811B, BadEdited_OutOfRange_DominantValueChanged = 0x811C, BadOutOfRange_DominantValueChanged_DependentValueChanged = 0x811D, BadEdited_OutOfRange_DominantValueChanged_DependentValueChanged = 0x811E, GoodCommunicationEvent = 0x00A7, GoodShutdownEvent = 0x00A8, GoodCallAgain = 0x00A9, GoodNonCriticalTimeout = 0x00AA, BadInvalidArgument = 0x80AB, BadConnectionRejected = 0x80AC, BadDisconnect = 0x80AD, BadConnectionClosed = 0x80AE, BadInvalidState = 0x80AF, BadEndOfStream = 0x80B0, BadNoDataAvailable = 0x80B1, BadWaitingForResponse = 0x80B2, BadOperationAbandoned = 0x80B3, BadExpectedStreamToBlock = 0x80B4, BadWouldBlock = 0x80B5, BadSyntaxError = 0x80B6, BadMaxConnectionsReached = 0x80B7, UncertainTransducerInManual = 0x4208, UncertainSimulatedValue = 0x4209, UncertainSensorCalibration = 0x420A, UncertainConfigurationError = 0x420F, GoodCascadeInitializationAcknowledged = 0x0401, GoodCascadeInitializationRequest = 0x0402, GoodCascadeNotInvited = 0x0403, GoodCascadeNotSelected = 0x0404, GoodFaultStateActive = 0x0407, GoodInitiateFaultState = 0x0408, GoodCascade = 0x0409, BadDataSetIdInvalid = 0x80E7, }; Q_ENUM(Status) OpcUaStatus(); OpcUaStatus(QOpcUa::UaStatusCode); OpcUaStatus(Status); ~OpcUaStatus(); bool isGood() const; bool isBad() const; Status status() const; private: quint32 m_statusCode{QOpcUa::Good}; }; // Expose only the enums with the uppercase "Status" name namespace OpcuaStatusForeign { Q_NAMESPACE QML_FOREIGN_NAMESPACE(OpcUaStatus) QML_NAMED_ELEMENT(Status) QML_ADDED_IN_VERSION(5, 13) }; QT_END_NAMESPACE #endif // OPCUASTATUS_P_H