/ src / BerBoolObject.cpp
BerBoolObject.cpp
 1  /**
 2   * @file BerBoolObject.cpp
 3   * @author Rene Ceska xceska06 (xceska06@stud.fit.vutbr.cz)
 4   * @date 2023-11-19
 5   */
 6  #include "inc/BerBoolObject.h"
 7  
 8  berObjectTypes BerBoolObject::getBerObjectType() { return berBoolObject; }
 9  
10  long long int BerBoolObject::getLenght() {
11    const int BOOL_DATA_LENGTH = 1;
12    return BER_TAG_LENGTH + BER_LENGTH_OF_LENGTH_TAG + BOOL_DATA_LENGTH;
13  }
14  
15  std::vector<unsigned char> BerBoolObject::getBerRepresentation() {
16    const int BOOL_DATA_LENGTH = 1;
17    std::vector<unsigned char> berRepresentation;
18    berRepresentation.push_back(BER_BOOL_C);
19    berRepresentation.push_back(BOOL_DATA_LENGTH);
20    if (value > 0) {
21      berRepresentation.push_back(0xFF);
22    } else {
23      berRepresentation.push_back(0x00);
24    }
25    return berRepresentation;
26  }
27  
28  BerBoolObject::BerBoolObject(char value) { this->value = value; }
29  
30  BerBoolObject::~BerBoolObject() {}