/// <summary>BER encode the variable binding /// </summary> /// <param name="buffer"><see cref="MutableByte"/> class to the end of which encoded variable /// binding values will be added. /// </param> public override void Encode(MutableByte buffer) { // encode oid to the temporary buffer MutableByte oidbuf = new MutableByte(); _oid.Encode(oidbuf); // encode value to a temporary buffer MutableByte valbuf = new MutableByte(); _value.Encode(valbuf); // calculate data content length of the vb int vblen = oidbuf.Length + valbuf.Length; // encode vb header at the end of the result BuildHeader(buffer, Type, vblen); // add values to the encoded arrays to the end of the result buffer.Append(oidbuf); buffer.Append(valbuf); }