See the section Populating Generated Structure Variables for Encoding for a discussion on how to populate variables for encoding.
The only difference in populating encode member variables for the general case and
for 3GPP layer 3 has to do with an element configured to be a length variable via the
<is3GLength/>
configuration setting. A value populated in this field
will be ignored and replaced with the actual length of the encoded data.