Open huaihuaiVV opened 7 years ago
Probably, yes. Can you provide a self-contained example? I.e. how is MyType defined?
for example:
MyType ::= SEQUENCE { a INTEGER, b INTEGER, c INTEGER } myValue MyType ::= { a 100, b 200, c 300 }
then, it can generate the python value named : myValue = MyType() myValue.setComponentByname("a", univ.integer(100)) myValue.setComponentByname("a", univ.integer(200)) myValue.setComponentByname("a", univ.integer(300))
for more complex type:
MyType2 ::= SEQUENCE { a SET OF SEQUENCE { m0 INTEGER, m1 INTEGER, m2 INTEGER}, b SET OF SEQUENCE { m0 INTEGER, m1 INTEGER, m2 INTEGER}, c SET OF SEQUENCE { m0 INTEGER, m1 INTEGER, m2 INTEGER} }
myValue MyType2 ::= { a {{m0 1, m1 2, m3 3}, {m0 1, m1 2, m3 3}, {m0 1, m1 2, m3 3}}, b {{m0 1, m1 2, m3 3}, {m0 1, m1 2, m3 3}, {m0 1, m1 2, m3 3}}, c {{m0 1, m1 2, m3 3}, {m0 1, m1 2, m3 3}, {m0 1, m1 2, m3 3}}, }
it can generate the value:
myValue = MyType2() myValue.setComponentByName("a", ........) myValue.setComponentByName("b", ........) myValue.setComponentByName("c", ........) ...
like this .
it will be very useful, we don'e need write python code to generate these data, just need write the ASN1 file .
Thanks a lot ~
and for value reference by other value:
MyType ::= SEQUENCE { a INTEGER, b INTEGER, c INTEGER }
MyType2 ::= SEQUENCE OF MyType
myValue MyType ::= { a 100, b 200, c 300 }
myValue2 MyType2 ::= { myValue, myValue, myValue }
can generate \:
myValue = myType()
myValue2 = MyType2() myValue2.SetComponenetByPosition(0, myValue) myValue2.SetComponenetByPosition(1, myValue) myValue2.SetComponenetByPosition(2, myValue)
That is all !!
for value notation details: http://stackoverflow.com/questions/26760194/value-notation-for-this-asn-1-schema http://www.oss.com/asn1/resources/reference/asn1-reference-card.html
Thanks a lot ~
i found it don't support value notation like this : myValue MyType ::= { a 100, b 200, c 300 }
could it be supported ?
Thanks