Location:
asn1enc.h
Link against: asn1.lib
class CASN1EncBase : public CBase;
Base class for all ASN.1 types that we can encode.
CBase
- Base class for all classes to be instantiated on the heap
CASN1EncBase
- Base class for all ASN.1 types that we can encode
Defined in CASN1EncBase
:
CASN1EncBase()
, CalculateContentsLengthDER()
, ConstructL()
, IsConstructed()
, LengthDER()
, SetTag()
, WriteContentsDERL()
, WriteDERL()
, WriteLengthDER()
, iContentsLengthDER
, iLengthLengthDER
, iTagLengthDER
, ~CASN1EncBase()
Inherited from CBase
:
Delete()
,
Extension_()
,
operator new()
protected: IMPORT_C CASN1EncBase(const TTagType aType, const TASN1Class aClass);
Protected constructor
|
protected: virtual IMPORT_C void ConstructL();
Must call this version from derived classes in their ConstructL, but only once they're ready to have CalculateContentsLengthDER called on them.
IMPORT_C TUint LengthDER() const;
Gives total number of octets in the DER encoding of this object.
|
IMPORT_C void WriteDERL(TDes8 &aBuf, TUint &aPos) const;
Writes entire DER encoding of this object into the given buffer.
|
IMPORT_C void SetTag(const TTagType aType, const TASN1Class aClass=EContextSpecific);
Sets tag type/class of the encoding object
|
private: virtual void CalculateContentsLengthDER()=0;
Calculates number of octets in DER content encoding. Must set value of the appropriate data member.
private: virtual void WriteLengthDER(TDes8 &aBuf) const;
Writes DER length encoding into supplied buffer, which is already verified to be big enough.
|
private: virtual void WriteContentsDERL(TDes8 &aBuf) const=0;
Writes DER content encoding into supplied buffer, which is already verified to be big enough. Must be implemented by derived classes.
|
protected: TUint iContentsLengthDER;
Length of DER encoded content.