All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ObjectIdentifier.h
Go to the documentation of this file.
1 //---------------------------------------------------------------------------------------
2 // Copyright (c) 2001-2023 by Apryse Software Inc. All Rights Reserved.
3 // Consult legal.txt regarding legal and license information.
4 //---------------------------------------------------------------------------------------
5 
6 #ifndef PDFTRON_H_CPPPDFObjectIdentifier
7 #define PDFTRON_H_CPPPDFObjectIdentifier
8 #include <C/Crypto/TRN_ObjectIdentifier.h>
9 
10 #include <Common/BasicTypes.h>
11 #include <Common/UString.h>
12 #include <PDF/PDFDoc.h>
13 
14 namespace pdftron { namespace Crypto {
19 {
20 public:
21  //enums:
22  enum Predefined {
24  e_surname = 1,
31  e_SHA1 = 8,
32  e_SHA256 = 9,
33  e_SHA384 = 10,
34  e_SHA512 = 11,
38  e_MGF1 = 15
39  };
40 
41  ObjectIdentifier(const ObjectIdentifier& other);
44 
45  void Destroy();
46 
47  //methods:
48 
56  ObjectIdentifier(const Predefined in_oid_enum);
57 
58 #ifdef SWIG
59 
64  ObjectIdentifier(const std::vector<int>& in_arr);
65 #else
66 
72  ObjectIdentifier(const UInt32* in_arr, const size_t in_size);
73 #endif
74 
80  ObjectIdentifier(const DigestAlgorithm::Type in_digest_algorithm_type);
81 
87  std::vector<UInt32> GetRawValue() const;
88 
89 #ifdef SWIG
91 #endif
92 
93 #ifndef SWIGHIDDEN
94  ObjectIdentifier(TRN_ObjectIdentifier impl);
95  TRN_ObjectIdentifier m_impl;
96 #endif
97 
98 private:
99 
100 #ifndef SWIGHIDDEN
101  mutable bool m_owner;
102 #endif
103 };
104 
105 #include <Impl/ObjectIdentifier.inl>
106 } //end Crypto
107 } //end pdftron
108 
109 
110 #endif //PDFTRON_H_CPPPDFObjectIdentifier
std::vector< UInt32 > GetRawValue() const
TRN_UInt32 UInt32
Definition: BasicTypes.h:13
ObjectIdentifier(const ObjectIdentifier &other)
ObjectIdentifier & operator=(const ObjectIdentifier &other)