-bool e2sm_subscription::encode_action_defn(unsigned char *buf, size_t *size, e2sm_subscription_helper &helper){
+HWActionDefinition::HWActionDefinition(void){
+
+ _param_list = std::make_unique<std::vector<RANParamIEs>>(); _count_list = 0;
+
+ memset(&_action_fmt1, 0, sizeof(E2SM_HelloWorld_ActionDefinition_Format1_t));
+
+ int SEQOFRANPARAMS = 1;
+
+ _ranparam_ie = 0;
+ _ranparam_ie = (RANparameter_Item_t*)calloc(SEQOFRANPARAMS, sizeof(RANparameter_Item_t));
+ assert(_ranparam_ie != 0);
+
+ _action_defn = 0;
+ _action_defn = (E2SM_HelloWorld_ActionDefinition_t*)calloc(1, sizeof(E2SM_HelloWorld_ActionDefinition_t));
+ assert(_action_defn !=0);
+
+
+};
+
+HWActionDefinition::~HWActionDefinition(void){
+
+ mdclog_write(MDCLOG_DEBUG, "Freeing Action Definition object memory");
+ _action_defn->choice.actionDefinition_Format1 = 0;
+ free(_ranparam_ie);
+ ASN_STRUCT_FREE(asn_DEF_E2SM_HelloWorld_ActionDefinition, _action_defn);
+
+
+};
+bool HWActionDefinition::encode(unsigned char *buf, size_t *size){