mirror of
				https://gitea.osmocom.org/cellular-infrastructure/osmo-msc.git
				synced 2025-10-31 03:53:37 +00:00 
			
		
		
		
	This is the first step in creating this repository from the legacy openbsc.git. Like all other Osmocom repositories, keep the autoconf and automake files in the repository root. openbsc.git has been the sole exception, which ends now. Change-Id: I9c6f2a448d9cb1cc088cf1cf6918b69d7e69b4e7
		
			
				
	
	
		
			38 lines
		
	
	
		
			835 B
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			835 B
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env python
 | |
| 
 | |
| #
 | |
| # Convert ETSI documents to an enum
 | |
| #
 | |
| 
 | |
| import re, sys
 | |
| 
 | |
| def convert(string):
 | |
|     string = string.strip().replace(" ", "").rjust(8, "0")
 | |
|     var = 0
 | |
|     offset = 7
 | |
|     for char in string:
 | |
|         assert offset >= 0
 | |
|         var = var | (int(char) << offset)
 | |
|         offset = offset - 1
 | |
| 
 | |
|     return var
 | |
| 
 | |
| def string(name):
 | |
|     name = name.replace(" ", "_")
 | |
|     name = name.replace('"', "")
 | |
|     name = name.replace('/', '_')
 | |
|     name = name.replace('(', '_')
 | |
|     name = name.replace(')', '_')
 | |
|     return "%s_%s" % (sys.argv[2], name.upper())
 | |
| 
 | |
| file = open(sys.argv[1])
 | |
| 
 | |
| 
 | |
| for line in file:
 | |
|     m = re.match(r"[ \t]*(?P<value>[01 ]+)[ ]+(?P<name>[a-zA-Z /0-9()]+)", line[:-1])
 | |
| 
 | |
|     if m:
 | |
|         print "\t%s\t\t= %d," % (string(m.groupdict()["name"]), convert(m.groupdict()["value"]))
 | |
|     else:
 | |
|         print line[:-1]
 |