Package ais
[hide private]
[frames] | no frames]

Package ais

source code

Python module for Automatic Indentification System (AIS). This is the 3rd iteration of creating an AIS codec package in python. This version is more a compiler so that it could be altered to emit something other than python if need be. The focus this time is on building a simple distributable batch of code that only requires the python lxml package when it builds the python. After that, the only requirement is the BitVector package by Avi Kak. BitVector is included with permission for your convenience, but it is best if you install BitVector yourself from the original distribution.


See Also:
NMEA strings at http://gpsd.berlios.de/NMEA.txt, Wikipedia at http://en.wikipedia.org/wiki/Automatic_Identification_System

Author: Kurt Schwehr email homepage

Requires:

Version: 0.32

License: GPL version 2

Copyright: (C) 2006-2007 Kurt Schwehr/UNH

To Do: the msgName variable should be generated from the XML

Submodules [hide private]
  • ais.BitVector: BitVector.py Version: 1.3 Author: Avinash Kak (kak@purdue.edu) Date: 2006-Dec-26 CHANGE LOG: Version 1.3: (a) One more constructor mode included: When initializing a new bit vector with an integer value, you can now also specify a size for the bit vector.
  • ais.ais_msg_1: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_10: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_12: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_14: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_15: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_18: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_19: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_2: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_20: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_21: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_22: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_3: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_4: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_5: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_5_utils: Hand coded utilities for ais ship and cargo messages (msg #5).
  • ais.ais_msg_6: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_7: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_8: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.ais_msg_9: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.aisfield: Create a basic field for an ais message
  • ais.aisstring: Handle encoding and decoding AIS strings.
  • ais.aisxml2wxpy: Build a wxpython interface that uses the aisxmlbinmsg2py generated file to create a message string.
  • ais.aisxmlbinmsg2py: Tools to generate python code to serialize/deserialize messages between python and ais binary.
  • ais.allaistypes: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.binary: AIS binary helper functions.
  • ais.exampleParser: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.expandais: Expand structs in ais xml to include-struct elements while applying name mangling
  • ais.imo_001_11: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.imo_001_13: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.imo_001_14: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.nmea: Handle creation and extraction of NMEA strings.
  • ais.ris: European river Information System messages
    • ais.ris.waterlevel: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.sls: St.
    • ais.sls.estlocktimes: Autogenerated python functions to serialize/deserialize binary messages.
    • ais.sls.lockorder: Autogenerated python functions to serialize/deserialize binary messages.
    • ais.sls.lockschedule: Autogenerated python functions to serialize/deserialize binary messages.
    • ais.sls.waterflow: Autogenerated python functions to serialize/deserialize binary messages.
    • ais.sls.waterlevel: Autogenerated python functions to serialize/deserialize binary messages.
    • ais.sls.weatherreport: Autogenerated python functions to serialize/deserialize binary messages.
    • ais.sls.wind: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.sqlhelp: Helper functions to create SQL statements.
  • ais.test
  • ais.test_sls_waterlevel: Run a water level message from NMEA to decoded
  • ais.timed_circular_notice: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.translators: Codecs to handle encoding to and from BitVectors
  • ais.waterlevel: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.whalenotice: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.whalenotice1: Autogenerated python functions to serialize/deserialize binary messages.
  • ais.whalenotice2: Autogenerated python functions to serialize/deserialize binary messages.

Variables [hide private]
  msgNames = {1: 'Position, Class A', 2: 'Position, Class A', 3:...
Messages in the main AIS name space
  msgModByNumber = {1: <module 'ais.ais_msg_1' from '/Users/schw...
Allows easier decoding of messages without having to write as much code
  msgModByFirstChar = {'1': <module 'ais.ais_msg_1' from '/Users...
Variables Details [hide private]

msgNames

Messages in the main AIS name space
Value:
{1: 'Position, Class A',
 2: 'Position, Class A',
 3: 'Position, Class A',
 4: 'Base station report',
 5: 'Ship and Cargo',
 6: 'Addressed binary message',
 7: 'ACK for addressed binary message',
 8: 'Binary broadcast message (BBM)',
...

msgModByNumber

Allows easier decoding of messages without having to write as much code
Value:
{1: <module 'ais.ais_msg_1' from '/Users/schwehr/projects/src/noaadata\
/ais/ais_msg_1.pyc'>,
 2: <module 'ais.ais_msg_2' from '/Users/schwehr/projects/src/noaadata\
/ais/ais_msg_2.pyc'>,
 3: <module 'ais.ais_msg_3' from '/Users/schwehr/projects/src/noaadata\
/ais/ais_msg_3.pyc'>,
 4: <module 'ais.ais_msg_4' from '/Users/schwehr/projects/src/noaadata\
/ais/ais_msg_4.pyc'>,
...

msgModByFirstChar

Value:
{'1': <module 'ais.ais_msg_1' from '/Users/schwehr/projects/src/noaada\
ta/ais/ais_msg_1.pyc'>,
 '2': <module 'ais.ais_msg_2' from '/Users/schwehr/projects/src/noaada\
ta/ais/ais_msg_2.pyc'>,
 '3': <module 'ais.ais_msg_3' from '/Users/schwehr/projects/src/noaada\
ta/ais/ais_msg_3.pyc'>,
 '4': <module 'ais.ais_msg_4' from '/Users/schwehr/projects/src/noaada\
ta/ais/ais_msg_4.pyc'>,
...