Some things that come to mind right now:
1) eliminate all globals/statics
2) contain each of the BACnet services in it's own
source file (for easy additions later)
3) Abstract away any objects that this stack might
provide (since we won't know what people will need in
the way of local objects).
4) Get the whole thing to run as a daemon (maybe) or
just as a library to be linked against.
5) Multi-threaded?
6) platform datatype size safe (I'm concerned about
char/int)
7) Don't assume we have a PC's memory to work with
(some of the structures are memory heavy)
8) Determine a standard interface for all the services
to use (APDU in, broken down version out)
[by Greg H.]
Anonymous