AusweisApp
Lade ...
Suche ...
Keine Treffer
ApplicationTemplates.h
gehe zur Dokumentation dieser Datei
5#pragma once
6
8
9#include <QByteArray>
10#include <QList>
11#include <QSharedPointer>
12
13
14namespace governikus
15{
16
24DECLARE_ASN1_FUNCTIONS(ApplicationTemplatesInternal)
26
28{
29 Q_DISABLE_COPY(ApplicationTemplates)
30 friend class QSharedPointer<ApplicationTemplates>;
31
32 private:
33 const QByteArray mContentBytes;
34 const QList<QSharedPointer<const ApplicationTemplate>> mApplicationTemplates;
35
36 ApplicationTemplates(const QByteArray& pBytes,
37 const QList<QSharedPointer<const ApplicationTemplate>>& pApplicationTemplates);
38
39 static QByteArray buildAsn1LengthField(unsigned int pLength);
40
41 public:
42 static QSharedPointer<ApplicationTemplates> decode(const QByteArray& pBytes);
43
44 bool contains(const QByteArray& pIdentifier) const;
45
46 [[nodiscard]] const QByteArray& getContentBytes() const;
47 [[nodiscard]] const QList<QSharedPointer<const ApplicationTemplate>>& getApplicationTemplates() const;
48 [[nodiscard]] qsizetype count() const;
49};
50
51
52} // namespace governikus
#define DECLARE_ASN1_OBJECT(name)
Definition ASN1TemplateUtil.h:175
Definition ApplicationTemplates.h:28
Defines the AccessRight and AccessRole enum.
Definition CommandApdu.h:17
STACK_OF(ApplicationTemplate) ApplicationTemplatesInternal
EF.DIR = ApplicationTemplates ::= SET OF ApplicationTemplate.
Definition ApplicationTemplates.h:23
struct application_template_st { ASN1_OCTET_STRING *mApplicationIdentifier; ASN1_PRINTABLESTRING *mApplicationLabel; ASN1_OCTET_STRING *mFileReference; ASN1_OCTET_STRING *mCommandApdu; ASN1_OCTET_STRING *mDiscretionaryData; ASN1_OCTET_STRING *mUniformResourceLocator; static QSharedPointer< application_template_st > decode(const QByteArray &pBytes); ~application_template_st();[[nodiscard]] QByteArray getAid() const ;} ApplicationTemplate
Definition ApplicationTemplate.h:33