Pnt2poi.txt

Z UMP

Spis treści

Format użyty w narzedzia/pnt2poi.txt

Istnieje w UMPie kilka narzędzi montujących (bat/perl/sh), każde z nich zawiera własną tablice konwersji typ słowny na wartość numeryczna (hex) np APTEKA => 0x2e05. Każdą zmianę tych tablic trzeba wykonać w 3 miejscach, co jest proszeniem się o problemy. Plik pnt2poi.txt ma połączyć te osobne tablice w jednym miejscu.

Specyfikacja

plik składa się z sekcji [COS] ... [END] rozpoznawane przez programy montujące są następujące sekcje

DEF-POI

[DEF-POI] 
_plik=
_poziom=
_dopisz=
NAZWA=Wartość_hex
[END] 

W sekcji DEF-POI rozpoznawane są parametry _plik _poziom _dopisz

  • _plik podaje domyślną nazwę do jakiej ma trafić dany poi
  • _poziom podaje domyślny endlevel
  • _dopisz dodaje do nazwy poi-a (na końcu) w trakcie kompilacji tekst zdefiniowany w tej zmiennej.
  • NAZWA to podanie typu słownego i odpowiadającej im wartości hex. Wielkość liter nie ma znaczenia, jednak dla czytelności sugerowana jest UPPERCASE.
  • # dopuszczalny jest komentarz "#" wszystko po tym znaku jest ignorowane

DEF-REVPOI

[DEF-REVPOI]
NAZWA=RegExp
[END]

Sekcja DEF-REVPOI służy do rozpoznawania typu poi po jego nazwie (dla nowych poi bez typ), często się to przydaje przy pkp pks gdzie typ numeryczny jest ten sam a jednak chcieli byśmy rozróżniać takie poi (np: dla mapy www)


Przykłady

[DEF-POI]
_plik=City.poi
_poziom=4
CITY:1M=0x04
CITY:500k=0x05
CITY:200k=0x06
[END]
[DEF-POI]
#bankatm w kompilacji dostaje +ATM
_plik=POI-Bank.poi
_dopisz=+ATM(24h)
BANKATM:24h=0x2f06
[END]
[DEF-REVPOI]
BENZYNA=ORLEN
PKP=^PKP
[END]


Ograniczenia

Występują pewne ograniczenia i uproszczenia:

  • parametry _plik _dopisz _poziom powinny być na początku sekcji.
  • regexp powinien być najprostszy z możliwych bez "\" i innych udziwnień.

Pomysły

  • zamiana pozycji w DEF-POI np 0x2f06=BANKATM:24h - odrzucone powód brak niepowtarzalności pierwszej pozycji w sekcji (brak możliwości korzystania z bibliotek ini w przyszłości)
  • dodanie wyróżnika dla parametrów - dodany w postaci "_"