#include "asn-incl.h"
#include "tbl.h"
AsnLen
BEncTBLRangeContent PARAMS ((b, v),
BUF_TYPE b _AND_
TBLRange *v)
{
AsnLen totalLen = 0;
AsnLen itemLen;
AsnLen listLen;
void *component;
itemLen = BEncAsnIntContent (b, (&v->to));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, CNTX, PRIM, 1);
totalLen += itemLen;
itemLen = BEncAsnIntContent (b, (&v->from));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, CNTX, PRIM, 0);
totalLen += itemLen;
return totalLen;
}
AsnLen
BEncTBLNamedNumberContent PARAMS ((b, v),
BUF_TYPE b _AND_
TBLNamedNumber *v)
{
AsnLen totalLen = 0;
AsnLen itemLen;
AsnLen listLen;
void *component;
itemLen = BEncAsnIntContent (b, (&v->value));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, CNTX, PRIM, 1);
totalLen += itemLen;
itemLen = BEncPrintableStringContent (b, (&v->name));
itemLen += BEncDefLen (b, itemLen);
itemLen += BEncTag1 (b, CNTX, PRIM, 0);
totalLen += itemLen;
return totalLen;
}
AsnLen
BEncTBLNamedNumberListContent PARAMS ((b, v),
BUF_TYPE b _AND_
TBLNamedNumberList *v)
{
AsnLen totalLen = 0;
AsnLen itemLen;
AsnLen listLen;
void *component;
listLen = 0;
FOR_EACH_LIST_ELMT_RVS (component, v)
{
BEncEocIfNec (b);
itemLen = BEncTBLNamedNumberContent (b, component);
itemLen += BEncConsLen (b, itemLen);
itemLen += BEncTag1 (b, UNIV, CONS, 16);
listLen += itemLen;
}
return listLen;
}
AsnLen
BEncTBLTypeRefContent PARAMS ((b, v),
BUF_TYPE b _AND_
TBLTypeRef *v)
{
AsnLen totalLen = 0;
AsnLen itemLen;
AsnLen listLen;
void *component;
itemLen = BEncAsnBoolContent (b, (&v->implicit));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, UNIV, PRIM, 1);
totalLen += itemLen;
itemLen = BEncTBLTypeDefIdContent (b, (&v->typeDef));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, UNIV, PRIM, 2);
totalLen += itemLen;
return totalLen;
}
AsnLen
BEncTBLTagContent PARAMS ((b, v),
BUF_TYPE b _AND_
TBLTag *v)
{
AsnLen totalLen = 0;
AsnLen itemLen;
AsnLen listLen;
void *component;
itemLen = BEncAsnIntContent (b, (&v->code));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, UNIV, PRIM, 2);
totalLen += itemLen;
itemLen = BEncTBLTagClassContent (b, (&v->tclass));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, UNIV, PRIM, 10);
totalLen += itemLen;
return totalLen;
}
AsnLen
BEncTBLTypeSeqOfContent PARAMS ((b, v),
BUF_TYPE b _AND_
TBLTypeSeqOf *v)
{
AsnLen totalLen = 0;
AsnLen itemLen;
AsnLen listLen;
void *component;
listLen = 0;
FOR_EACH_LIST_ELMT_RVS (component, v)
{
BEncEocIfNec (b);
itemLen = BEncTBLTagContent (b, component);
itemLen += BEncConsLen (b, itemLen);
itemLen += BEncTag1 (b, UNIV, CONS, 16);
listLen += itemLen;
}
return listLen;
}
AsnLen
BEncTBLTypeContentSeqOfContent PARAMS ((b, v),
BUF_TYPE b _AND_
TBLTypeContentSeqOf *v)
{
AsnLen totalLen = 0;
AsnLen itemLen;
AsnLen listLen;
void *component;
listLen = 0;
FOR_EACH_LIST_ELMT_RVS (component, v)
{
BEncEocIfNec (b);
itemLen = BEncTBLTypeContent (b, component);
itemLen += BEncConsLen (b, itemLen);
itemLen += BEncTag1 (b, UNIV, CONS, 16);
listLen += itemLen;
}
return listLen;
}
AsnLen
BEncTBLTypeContent PARAMS ((b, v),
BUF_TYPE b _AND_
TBLType *v)
{
AsnLen totalLen = 0;
AsnLen itemLen;
AsnLen listLen;
void *component;
if (NOT_NULL ((v->values)))
{
BEncEocIfNec (b);
itemLen = BEncTBLNamedNumberListContent (b, (v->values));
itemLen += BEncConsLen (b, itemLen);
itemLen += BEncTag1 (b, CNTX, CONS, 6);
totalLen += itemLen;
}
if (NOT_NULL ((v->constraint)))
{
BEncEocIfNec (b);
itemLen = BEncTBLRangeContent (b, (v->constraint));
itemLen += BEncConsLen (b, itemLen);
itemLen += BEncTag1 (b, CNTX, CONS, 5);
totalLen += itemLen;
}
if (ASNOCTS_PRESENT ((&v->fieldName)))
{
itemLen = BEncPrintableStringContent (b, (&v->fieldName));
itemLen += BEncDefLen (b, itemLen);
itemLen += BEncTag1 (b, CNTX, PRIM, 4);
totalLen += itemLen;
}
BEncEocIfNec (b);
itemLen = BEncTBLTypeContentContent (b, (v->content));
itemLen += BEncConsLen (b, itemLen);
itemLen += BEncTag1 (b, CNTX, CONS, 3);
totalLen += itemLen;
if (NOT_NULL ((v->tagList)))
{
BEncEocIfNec (b);
itemLen = BEncTBLTypeSeqOfContent (b, (v->tagList));
itemLen += BEncConsLen (b, itemLen);
itemLen += BEncTag1 (b, CNTX, CONS, 2);
totalLen += itemLen;
}
itemLen = BEncAsnBoolContent (b, (&v->optional));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, CNTX, PRIM, 1);
totalLen += itemLen;
itemLen = BEncTBLTypeIdContent (b, (&v->typeId));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, CNTX, PRIM, 0);
totalLen += itemLen;
return totalLen;
}
AsnLen
BEncTBLTypeContentContent PARAMS ((b, v),
BUF_TYPE b _AND_
TBLTypeContent *v)
{
AsnLen totalLen = 0;
AsnLen itemLen;
AsnLen listLen;
void *component;
switch (v->choiceId)
{
case TBLTYPECONTENT_PRIMTYPE:
itemLen = BEncAsnNullContent (b, (&v->a.primType));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, CNTX, PRIM, 0);
totalLen += itemLen;
break;
case TBLTYPECONTENT_ELMTS:
BEncEocIfNec (b);
itemLen = BEncTBLTypeContentSeqOfContent (b, (v->a.elmts));
itemLen += BEncConsLen (b, itemLen);
itemLen += BEncTag1 (b, CNTX, CONS, 1);
totalLen += itemLen;
break;
case TBLTYPECONTENT_TYPEREF:
BEncEocIfNec (b);
itemLen = BEncTBLTypeRefContent (b, (v->a.typeRef));
itemLen += BEncConsLen (b, itemLen);
itemLen += BEncTag1 (b, CNTX, CONS, 2);
totalLen += itemLen;
break;
}
return totalLen;
}
AsnLen
BEncTBLTypeDefContent PARAMS ((b, v),
BUF_TYPE b _AND_
TBLTypeDef *v)
{
AsnLen totalLen = 0;
AsnLen itemLen;
AsnLen listLen;
void *component;
if (NOT_NULL ((v->isPdu)))
{
itemLen = BEncAsnNullContent (b, (v->isPdu));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, UNIV, PRIM, 5);
totalLen += itemLen;
}
BEncEocIfNec (b);
itemLen = BEncTBLTypeContent (b, (v->type));
itemLen += BEncConsLen (b, itemLen);
itemLen += BEncTag1 (b, UNIV, CONS, 16);
totalLen += itemLen;
itemLen = BEncPrintableStringContent (b, (&v->typeName));
itemLen += BEncDefLen (b, itemLen);
itemLen += BEncTag1 (b, UNIV, PRIM, 19);
totalLen += itemLen;
itemLen = BEncTBLTypeDefIdContent (b, (&v->typeDefId));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, UNIV, PRIM, 2);
totalLen += itemLen;
return totalLen;
}
AsnLen
BEncTBLModuleSeqOfContent PARAMS ((b, v),
BUF_TYPE b _AND_
TBLModuleSeqOf *v)
{
AsnLen totalLen = 0;
AsnLen itemLen;
AsnLen listLen;
void *component;
listLen = 0;
FOR_EACH_LIST_ELMT_RVS (component, v)
{
BEncEocIfNec (b);
itemLen = BEncTBLTypeDefContent (b, component);
itemLen += BEncConsLen (b, itemLen);
itemLen += BEncTag1 (b, UNIV, CONS, 16);
listLen += itemLen;
}
return listLen;
}
AsnLen
BEncTBLModuleContent PARAMS ((b, v),
BUF_TYPE b _AND_
TBLModule *v)
{
AsnLen totalLen = 0;
AsnLen itemLen;
AsnLen listLen;
void *component;
BEncEocIfNec (b);
itemLen = BEncTBLModuleSeqOfContent (b, (v->typeDefs));
itemLen += BEncConsLen (b, itemLen);
itemLen += BEncTag1 (b, CNTX, CONS, 3);
totalLen += itemLen;
itemLen = BEncAsnBoolContent (b, (&v->isUseful));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, CNTX, PRIM, 2);
totalLen += itemLen;
if (ASNOID_PRESENT ((&v->id)))
{
itemLen = BEncAsnOidContent (b, (&v->id));
itemLen += BEncDefLen (b, itemLen);
itemLen += BEncTag1 (b, CNTX, PRIM, 1);
totalLen += itemLen;
}
itemLen = BEncPrintableStringContent (b, (&v->name));
itemLen += BEncDefLen (b, itemLen);
itemLen += BEncTag1 (b, CNTX, PRIM, 0);
totalLen += itemLen;
return totalLen;
}
AsnLen
BEncTBLSeqOfContent PARAMS ((b, v),
BUF_TYPE b _AND_
TBLSeqOf *v)
{
AsnLen totalLen = 0;
AsnLen itemLen;
AsnLen listLen;
void *component;
listLen = 0;
FOR_EACH_LIST_ELMT_RVS (component, v)
{
BEncEocIfNec (b);
itemLen = BEncTBLModuleContent (b, component);
itemLen += BEncConsLen (b, itemLen);
itemLen += BEncTag1 (b, UNIV, CONS, 16);
listLen += itemLen;
}
return listLen;
}
AsnLen BEncTBL PARAMS ((b, v),
BUF_TYPE b _AND_
TBL *v)
{
AsnLen l;
BEncEocIfNec (b);
l = BEncTBLContent (b, v);
l += BEncConsLen (b, l);
l += BEncTag1 (b, UNIV, CONS, SEQ_TAG_CODE);
return l;
}
AsnLen
BEncTBLContent PARAMS ((b, v),
BUF_TYPE b _AND_
TBL *v)
{
AsnLen totalLen = 0;
AsnLen itemLen;
AsnLen listLen;
void *component;
BEncEocIfNec (b);
itemLen = BEncTBLSeqOfContent (b, (v->modules));
itemLen += BEncConsLen (b, itemLen);
itemLen += BEncTag1 (b, UNIV, CONS, 16);
totalLen += itemLen;
itemLen = BEncAsnIntContent (b, (&v->totalLenStrings));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, UNIV, PRIM, 2);
totalLen += itemLen;
itemLen = BEncAsnIntContent (b, (&v->totalNumStrings));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, UNIV, PRIM, 2);
totalLen += itemLen;
itemLen = BEncAsnIntContent (b, (&v->totalNumTags));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, UNIV, PRIM, 2);
totalLen += itemLen;
itemLen = BEncAsnIntContent (b, (&v->totalNumTypes));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, UNIV, PRIM, 2);
totalLen += itemLen;
itemLen = BEncAsnIntContent (b, (&v->totalNumTypeDefs));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, UNIV, PRIM, 2);
totalLen += itemLen;
itemLen = BEncAsnIntContent (b, (&v->totalNumModules));
BEncDefLenTo127 (b, itemLen);
itemLen++;
itemLen += BEncTag1 (b, UNIV, PRIM, 2);
totalLen += itemLen;
return totalLen;
}