summaryrefslogtreecommitdiffstats
path: root/src/clients/patch_loader
diff options
context:
space:
mode:
Diffstat (limited to 'src/clients/patch_loader')
-rw-r--r--src/clients/patch_loader/.deps/cmdline.Po53
-rw-r--r--src/clients/patch_loader/.deps/om_patch_loader-patch_loader.Po568
-rw-r--r--src/clients/patch_loader/Makefile.am13
-rw-r--r--src/clients/patch_loader/README5
-rw-r--r--src/clients/patch_loader/cmdline.c163
-rw-r--r--src/clients/patch_loader/cmdline.ggo7
-rw-r--r--src/clients/patch_loader/cmdline.h47
-rw-r--r--src/clients/patch_loader/new_patch_loader.cpp76
-rw-r--r--src/clients/patch_loader/patch_loader.cpp82
9 files changed, 1014 insertions, 0 deletions
diff --git a/src/clients/patch_loader/.deps/cmdline.Po b/src/clients/patch_loader/.deps/cmdline.Po
new file mode 100644
index 00000000..6092089f
--- /dev/null
+++ b/src/clients/patch_loader/.deps/cmdline.Po
@@ -0,0 +1,53 @@
+cmdline.o cmdline.o: cmdline.c /usr/include/stdio.h \
+ /usr/include/features.h /usr/include/sys/cdefs.h \
+ /usr/include/gnu/stubs.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/include/stddef.h \
+ /usr/include/bits/types.h /usr/include/bits/wordsize.h \
+ /usr/include/bits/typesizes.h /usr/include/libio.h \
+ /usr/include/_G_config.h /usr/include/wchar.h /usr/include/bits/wchar.h \
+ /usr/include/gconv.h /usr/lib/gcc/i486-linux-gnu/4.0.4/include/stdarg.h \
+ /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
+ /usr/include/stdlib.h /usr/include/string.h ../../../config.h \
+ /usr/include/getopt.h cmdline.h
+
+/usr/include/stdio.h:
+
+/usr/include/features.h:
+
+/usr/include/sys/cdefs.h:
+
+/usr/include/gnu/stubs.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/include/stddef.h:
+
+/usr/include/bits/types.h:
+
+/usr/include/bits/wordsize.h:
+
+/usr/include/bits/typesizes.h:
+
+/usr/include/libio.h:
+
+/usr/include/_G_config.h:
+
+/usr/include/wchar.h:
+
+/usr/include/bits/wchar.h:
+
+/usr/include/gconv.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/include/stdarg.h:
+
+/usr/include/bits/stdio_lim.h:
+
+/usr/include/bits/sys_errlist.h:
+
+/usr/include/stdlib.h:
+
+/usr/include/string.h:
+
+../../../config.h:
+
+/usr/include/getopt.h:
+
+cmdline.h:
diff --git a/src/clients/patch_loader/.deps/om_patch_loader-patch_loader.Po b/src/clients/patch_loader/.deps/om_patch_loader-patch_loader.Po
new file mode 100644
index 00000000..4305f9cc
--- /dev/null
+++ b/src/clients/patch_loader/.deps/om_patch_loader-patch_loader.Po
@@ -0,0 +1,568 @@
+om_patch_loader-patch_loader.o om_patch_loader-patch_loader.o: \
+ patch_loader.cpp ../../../src/clients/OSCModelEngineInterface.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/string \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/c++config.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/os_defines.h \
+ /usr/include/features.h /usr/include/sys/cdefs.h \
+ /usr/include/gnu/stubs.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stringfwd.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/char_traits.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cstring \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cstddef \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/include/stddef.h \
+ /usr/include/string.h /usr/include/xlocale.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_algobase.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/climits \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/include/limits.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/include/syslimits.h \
+ /usr/include/limits.h /usr/include/bits/posix1_lim.h \
+ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \
+ /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \
+ /usr/include/bits/stdio_lim.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cstdlib \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/endian.h \
+ /usr/include/bits/endian.h /usr/include/sys/types.h \
+ /usr/include/bits/types.h /usr/include/bits/wordsize.h \
+ /usr/include/bits/typesizes.h /usr/include/time.h \
+ /usr/include/sys/select.h /usr/include/bits/select.h \
+ /usr/include/bits/sigset.h /usr/include/bits/time.h \
+ /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
+ /usr/include/bits/sched.h /usr/include/alloca.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/iosfwd \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/c++locale.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cstdio \
+ /usr/include/stdio.h /usr/include/libio.h /usr/include/_G_config.h \
+ /usr/include/wchar.h /usr/include/bits/wchar.h /usr/include/gconv.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/include/stdarg.h \
+ /usr/include/bits/sys_errlist.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/clocale \
+ /usr/include/locale.h /usr/include/bits/locale.h \
+ /usr/include/langinfo.h /usr/include/nl_types.h /usr/include/iconv.h \
+ /usr/include/libintl.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/c++io.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/gthr.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/gthr-default.h \
+ /usr/include/pthread.h /usr/include/sched.h /usr/include/signal.h \
+ /usr/include/bits/initspin.h /usr/include/bits/sigthread.h \
+ /usr/include/unistd.h /usr/include/bits/posix_opt.h \
+ /usr/include/bits/environments.h /usr/include/bits/confname.h \
+ /usr/include/getopt.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cctype \
+ /usr/include/ctype.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/postypes.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cwchar \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/ctime \
+ /usr/include/stdint.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/functexcept.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/exception_defines.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_pair.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/cpp_type_traits.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_iterator_base_types.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_iterator_base_funcs.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/concept_check.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_iterator.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/debug/debug.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cassert \
+ /usr/include/assert.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/memory \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/allocator.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/c++allocator.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/ext/new_allocator.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/new \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/exception \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_construct.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_uninitialized.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_raw_storage_iter.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/limits \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_function.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/basic_string.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/atomicity.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/atomic_word.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/algorithm \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_algo.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_heap.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_tempbuf.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/basic_string.tcc \
+ /usr/local/include/lo/lo.h /usr/local/include/lo/lo_endian.h \
+ /usr/include/netinet/in.h /usr/include/sys/socket.h \
+ /usr/include/sys/uio.h /usr/include/bits/uio.h \
+ /usr/include/bits/socket.h /usr/include/bits/sockaddr.h \
+ /usr/include/asm/socket.h /usr/include/asm-i486/socket.h \
+ /usr/include/asm/sockios.h /usr/include/asm-i486/sockios.h \
+ /usr/include/bits/in.h /usr/include/bits/byteswap.h \
+ /usr/local/include/lo/lo_types.h /usr/include/netdb.h \
+ /usr/include/rpc/netdb.h /usr/include/bits/siginfo.h \
+ /usr/include/bits/netdb.h /usr/local/include/lo/lo_osc_types.h \
+ /usr/local/include/lo/lo_errors.h /usr/local/include/lo/lo_lowlevel.h \
+ /usr/local/include/lo/lo_macros.h ../../../src/common/util/Semaphore.h \
+ /usr/include/semaphore.h \
+ ../../../src/common/interface/EngineInterface.h /usr/include/inttypes.h \
+ ../../../src/common/util/CountedPtr.h \
+ ../../../src/common/interface/ClientInterface.h \
+ ../../../src/clients/OSCEngineInterface.h \
+ ../../../src/clients/ModelEngineInterface.h \
+ ../../../src/clients/PatchLibrarian.h \
+ /usr/include/libxml2/libxml/tree.h \
+ /usr/include/libxml2/libxml/xmlversion.h \
+ /usr/include/libxml2/libxml/xmlexports.h \
+ /usr/include/libxml2/libxml/xmlstring.h \
+ /usr/include/libxml2/libxml/xmlregexp.h \
+ /usr/include/libxml2/libxml/dict.h \
+ /usr/include/libxml2/libxml/xmlmemory.h \
+ /usr/include/libxml2/libxml/threads.h \
+ /usr/include/libxml2/libxml/globals.h \
+ /usr/include/libxml2/libxml/parser.h /usr/include/libxml2/libxml/hash.h \
+ /usr/include/libxml2/libxml/valid.h \
+ /usr/include/libxml2/libxml/xmlerror.h \
+ /usr/include/libxml2/libxml/list.h \
+ /usr/include/libxml2/libxml/xmlautomata.h \
+ /usr/include/libxml2/libxml/entities.h \
+ /usr/include/libxml2/libxml/encoding.h \
+ /usr/include/libxml2/libxml/xmlIO.h /usr/include/libxml2/libxml/SAX.h \
+ /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \
+ ../../../src/clients/PatchModel.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/list \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_list.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/list.tcc \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/map \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_tree.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_map.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_multimap.h \
+ ../../../src/clients/NodeModel.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/iostream \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/ostream \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/ios \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/localefwd.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/ios_base.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/locale_classes.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/streambuf \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/streambuf.tcc \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/basic_ios.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/streambuf_iterator.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/locale_facets.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cwctype \
+ /usr/include/wctype.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/ctype_base.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/ctype_inline.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/codecvt.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/time_members.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/messages_members.h \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/basic_ios.tcc \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/ostream.tcc \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/locale \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/locale_facets.tcc \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/typeinfo \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/istream \
+ /usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/istream.tcc \
+ ../../../src/clients/ObjectModel.h ../../../src/common/util/Path.h \
+ ../../../src/clients/PortModel.h ../../../src/common/util/Path.h \
+ cmdline.h ../../../config.h
+
+../../../src/clients/OSCModelEngineInterface.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/string:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/c++config.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/os_defines.h:
+
+/usr/include/features.h:
+
+/usr/include/sys/cdefs.h:
+
+/usr/include/gnu/stubs.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stringfwd.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/char_traits.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cstring:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cstddef:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/include/stddef.h:
+
+/usr/include/string.h:
+
+/usr/include/xlocale.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_algobase.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/climits:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/include/limits.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/include/syslimits.h:
+
+/usr/include/limits.h:
+
+/usr/include/bits/posix1_lim.h:
+
+/usr/include/bits/local_lim.h:
+
+/usr/include/linux/limits.h:
+
+/usr/include/bits/posix2_lim.h:
+
+/usr/include/bits/xopen_lim.h:
+
+/usr/include/bits/stdio_lim.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cstdlib:
+
+/usr/include/stdlib.h:
+
+/usr/include/bits/waitflags.h:
+
+/usr/include/bits/waitstatus.h:
+
+/usr/include/endian.h:
+
+/usr/include/bits/endian.h:
+
+/usr/include/sys/types.h:
+
+/usr/include/bits/types.h:
+
+/usr/include/bits/wordsize.h:
+
+/usr/include/bits/typesizes.h:
+
+/usr/include/time.h:
+
+/usr/include/sys/select.h:
+
+/usr/include/bits/select.h:
+
+/usr/include/bits/sigset.h:
+
+/usr/include/bits/time.h:
+
+/usr/include/sys/sysmacros.h:
+
+/usr/include/bits/pthreadtypes.h:
+
+/usr/include/bits/sched.h:
+
+/usr/include/alloca.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/iosfwd:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/c++locale.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cstdio:
+
+/usr/include/stdio.h:
+
+/usr/include/libio.h:
+
+/usr/include/_G_config.h:
+
+/usr/include/wchar.h:
+
+/usr/include/bits/wchar.h:
+
+/usr/include/gconv.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/include/stdarg.h:
+
+/usr/include/bits/sys_errlist.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/clocale:
+
+/usr/include/locale.h:
+
+/usr/include/bits/locale.h:
+
+/usr/include/langinfo.h:
+
+/usr/include/nl_types.h:
+
+/usr/include/iconv.h:
+
+/usr/include/libintl.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/c++io.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/gthr.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/gthr-default.h:
+
+/usr/include/pthread.h:
+
+/usr/include/sched.h:
+
+/usr/include/signal.h:
+
+/usr/include/bits/initspin.h:
+
+/usr/include/bits/sigthread.h:
+
+/usr/include/unistd.h:
+
+/usr/include/bits/posix_opt.h:
+
+/usr/include/bits/environments.h:
+
+/usr/include/bits/confname.h:
+
+/usr/include/getopt.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cctype:
+
+/usr/include/ctype.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/postypes.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cwchar:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/ctime:
+
+/usr/include/stdint.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/functexcept.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/exception_defines.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_pair.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/cpp_type_traits.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_iterator_base_types.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_iterator_base_funcs.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/concept_check.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_iterator.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/debug/debug.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cassert:
+
+/usr/include/assert.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/memory:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/allocator.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/c++allocator.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/ext/new_allocator.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/new:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/exception:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_construct.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_uninitialized.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_raw_storage_iter.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/limits:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_function.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/basic_string.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/atomicity.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/atomic_word.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/algorithm:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_algo.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_heap.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_tempbuf.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/basic_string.tcc:
+
+/usr/local/include/lo/lo.h:
+
+/usr/local/include/lo/lo_endian.h:
+
+/usr/include/netinet/in.h:
+
+/usr/include/sys/socket.h:
+
+/usr/include/sys/uio.h:
+
+/usr/include/bits/uio.h:
+
+/usr/include/bits/socket.h:
+
+/usr/include/bits/sockaddr.h:
+
+/usr/include/asm/socket.h:
+
+/usr/include/asm-i486/socket.h:
+
+/usr/include/asm/sockios.h:
+
+/usr/include/asm-i486/sockios.h:
+
+/usr/include/bits/in.h:
+
+/usr/include/bits/byteswap.h:
+
+/usr/local/include/lo/lo_types.h:
+
+/usr/include/netdb.h:
+
+/usr/include/rpc/netdb.h:
+
+/usr/include/bits/siginfo.h:
+
+/usr/include/bits/netdb.h:
+
+/usr/local/include/lo/lo_osc_types.h:
+
+/usr/local/include/lo/lo_errors.h:
+
+/usr/local/include/lo/lo_lowlevel.h:
+
+/usr/local/include/lo/lo_macros.h:
+
+../../../src/common/util/Semaphore.h:
+
+/usr/include/semaphore.h:
+
+../../../src/common/interface/EngineInterface.h:
+
+/usr/include/inttypes.h:
+
+../../../src/common/util/CountedPtr.h:
+
+../../../src/common/interface/ClientInterface.h:
+
+../../../src/clients/OSCEngineInterface.h:
+
+../../../src/clients/ModelEngineInterface.h:
+
+../../../src/clients/PatchLibrarian.h:
+
+/usr/include/libxml2/libxml/tree.h:
+
+/usr/include/libxml2/libxml/xmlversion.h:
+
+/usr/include/libxml2/libxml/xmlexports.h:
+
+/usr/include/libxml2/libxml/xmlstring.h:
+
+/usr/include/libxml2/libxml/xmlregexp.h:
+
+/usr/include/libxml2/libxml/dict.h:
+
+/usr/include/libxml2/libxml/xmlmemory.h:
+
+/usr/include/libxml2/libxml/threads.h:
+
+/usr/include/libxml2/libxml/globals.h:
+
+/usr/include/libxml2/libxml/parser.h:
+
+/usr/include/libxml2/libxml/hash.h:
+
+/usr/include/libxml2/libxml/valid.h:
+
+/usr/include/libxml2/libxml/xmlerror.h:
+
+/usr/include/libxml2/libxml/list.h:
+
+/usr/include/libxml2/libxml/xmlautomata.h:
+
+/usr/include/libxml2/libxml/entities.h:
+
+/usr/include/libxml2/libxml/encoding.h:
+
+/usr/include/libxml2/libxml/xmlIO.h:
+
+/usr/include/libxml2/libxml/SAX.h:
+
+/usr/include/libxml2/libxml/xlink.h:
+
+/usr/include/libxml2/libxml/SAX2.h:
+
+../../../src/clients/PatchModel.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/list:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_list.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/list.tcc:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/map:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_tree.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_map.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/stl_multimap.h:
+
+../../../src/clients/NodeModel.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/iostream:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/ostream:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/ios:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/localefwd.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/ios_base.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/locale_classes.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/streambuf:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/streambuf.tcc:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/basic_ios.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/streambuf_iterator.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/locale_facets.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/cwctype:
+
+/usr/include/wctype.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/ctype_base.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/ctype_inline.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/codecvt.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/time_members.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/i486-linux-gnu/bits/messages_members.h:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/basic_ios.tcc:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/ostream.tcc:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/locale:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/locale_facets.tcc:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/typeinfo:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/istream:
+
+/usr/lib/gcc/i486-linux-gnu/4.0.4/../../../../include/c++/4.0.4/bits/istream.tcc:
+
+../../../src/clients/ObjectModel.h:
+
+../../../src/common/util/Path.h:
+
+../../../src/clients/PortModel.h:
+
+../../../src/common/util/Path.h:
+
+cmdline.h:
+
+../../../config.h:
diff --git a/src/clients/patch_loader/Makefile.am b/src/clients/patch_loader/Makefile.am
new file mode 100644
index 00000000..15e0c503
--- /dev/null
+++ b/src/clients/patch_loader/Makefile.am
@@ -0,0 +1,13 @@
+EXTRA_DIST = README
+
+om_patch_loader_CXXFLAGS = -I$(top_srcdir)/src/clients -I$(top_srcdir)/src/common -DPKGDATADIR=\"$(pkgdatadir)\" $(LXML2_CFLAGS) $(LOSC_CFLAGS)
+om_patch_loader_LDADD = ../libomclient.a $(LOSC_LIBS) $(LXML2_LIBS)
+
+bin_PROGRAMS = om_patch_loader
+
+om_patch_loader_DEPENDENCIES = ../libomclient.a
+
+om_patch_loader_SOURCES = \
+ patch_loader.cpp \
+ cmdline.h \
+ cmdline.c
diff --git a/src/clients/patch_loader/README b/src/clients/patch_loader/README
new file mode 100644
index 00000000..9f3b6f4b
--- /dev/null
+++ b/src/clients/patch_loader/README
@@ -0,0 +1,5 @@
+This is a stand-alone patch loader for Om. It has no user interface, it
+just launches, loads the patch(es) passed as a parameter, and exits.
+
+Useful for loading patches from scripts, other apps, etc. or just using
+Om patches without loading the GUI.
diff --git a/src/clients/patch_loader/cmdline.c b/src/clients/patch_loader/cmdline.c
new file mode 100644
index 00000000..0606cb7b
--- /dev/null
+++ b/src/clients/patch_loader/cmdline.c
@@ -0,0 +1,163 @@
+/*
+ File autogenerated by gengetopt version 2.10
+ generated with the following command:
+ gengetopt -u
+
+ The developers of gengetopt consider the fixed text that goes in all
+ gengetopt output files to be in the public domain:
+ we make no copyright claims on it.
+*/
+
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+/* If we use autoconf. */
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "getopt.h"
+
+#include "cmdline.h"
+
+void
+cmdline_parser_print_version (void)
+{
+ printf ("%s %s\n", CMDLINE_PARSER_PACKAGE, CMDLINE_PARSER_VERSION);
+}
+
+void
+cmdline_parser_print_help (void)
+{
+ cmdline_parser_print_version ();
+ printf("\n"
+ "Usage: %s [OPTIONS]... [FILES]...\n", CMDLINE_PARSER_PACKAGE);
+ printf(" -h --help Print help and exit\n");
+ printf(" -V --version Print version and exit\n");
+ printf(" -uSTRING --engine-url=STRING Om engine URL to connect to\n");
+ printf(" -pINT --client-port=INT Client port to listen on\n");
+}
+
+
+static char *gengetopt_strdup (const char *s);
+
+/* gengetopt_strdup() */
+/* strdup.c replacement of strdup, which is not standard */
+char *
+gengetopt_strdup (const char *s)
+{
+ char *result = (char*)malloc(strlen(s) + 1);
+ if (result == (char*)0)
+ return (char*)0;
+ strcpy(result, s);
+ return result;
+}
+
+int
+cmdline_parser (int argc, char * const *argv, struct gengetopt_args_info *args_info)
+{
+ int c; /* Character of the parsed option. */
+ int missing_required_options = 0;
+
+ args_info->help_given = 0 ;
+ args_info->version_given = 0 ;
+ args_info->engine_url_given = 0 ;
+ args_info->client_port_given = 0 ;
+#define clear_args() { \
+ args_info->engine_url_arg = NULL; \
+}
+
+ clear_args();
+
+ args_info->inputs = NULL;
+ args_info->inputs_num = 0;
+
+ optarg = 0;
+ optind = 1;
+ opterr = 1;
+ optopt = '?';
+
+ while (1)
+ {
+ int option_index = 0;
+ char *stop_char;
+
+ static struct option long_options[] = {
+ { "help", 0, NULL, 'h' },
+ { "version", 0, NULL, 'V' },
+ { "engine-url", 1, NULL, 'u' },
+ { "client-port", 1, NULL, 'p' },
+ { NULL, 0, NULL, 0 }
+ };
+
+ stop_char = 0;
+ c = getopt_long (argc, argv, "hVu:p:", long_options, &option_index);
+
+ if (c == -1) break; /* Exit from `while (1)' loop. */
+
+ switch (c)
+ {
+ case 'h': /* Print help and exit. */
+ clear_args ();
+ cmdline_parser_print_help ();
+ exit (EXIT_SUCCESS);
+
+ case 'V': /* Print version and exit. */
+ clear_args ();
+ cmdline_parser_print_version ();
+ exit (EXIT_SUCCESS);
+
+ case 'u': /* Om engine URL to connect to. */
+ if (args_info->engine_url_given)
+ {
+ fprintf (stderr, "%s: `--engine-url' (`-u') option given more than once\n", CMDLINE_PARSER_PACKAGE);
+ clear_args ();
+ exit (EXIT_FAILURE);
+ }
+ args_info->engine_url_given = 1;
+ args_info->engine_url_arg = gengetopt_strdup (optarg);
+ break;
+
+ case 'p': /* Client port to listen on. */
+ if (args_info->client_port_given)
+ {
+ fprintf (stderr, "%s: `--client-port' (`-p') option given more than once\n", CMDLINE_PARSER_PACKAGE);
+ clear_args ();
+ exit (EXIT_FAILURE);
+ }
+ args_info->client_port_given = 1;
+ args_info->client_port_arg = strtol (optarg,&stop_char,0);
+ break;
+
+
+ case 0: /* Long option with no short option */
+
+ case '?': /* Invalid option. */
+ /* `getopt_long' already printed an error message. */
+ exit (EXIT_FAILURE);
+
+ default: /* bug: option not considered. */
+ fprintf (stderr, "%s: option unknown: %c\n", CMDLINE_PARSER_PACKAGE, c);
+ abort ();
+ } /* switch */
+ } /* while */
+
+
+ if ( missing_required_options )
+ exit (EXIT_FAILURE);
+
+ if (optind < argc)
+ {
+ int i = 0 ;
+
+ args_info->inputs_num = argc - optind ;
+ args_info->inputs =
+ (char **)(malloc ((args_info->inputs_num)*sizeof(char *))) ;
+ while (optind < argc)
+ args_info->inputs[ i++ ] = gengetopt_strdup (argv[optind++]) ;
+ }
+
+ return 0;
+}
diff --git a/src/clients/patch_loader/cmdline.ggo b/src/clients/patch_loader/cmdline.ggo
new file mode 100644
index 00000000..5acd6737
--- /dev/null
+++ b/src/clients/patch_loader/cmdline.ggo
@@ -0,0 +1,7 @@
+# Process this file with gengetopt -u to generate the necessary code (in cmdline.h, cmdline.c)
+
+package "om_patch_loader - A command line patch loading client for Om"
+
+option "engine-url" u "Om engine URL to connect to" string no
+option "client-port" p "Client port to listen on" int no
+
diff --git a/src/clients/patch_loader/cmdline.h b/src/clients/patch_loader/cmdline.h
new file mode 100644
index 00000000..b417c664
--- /dev/null
+++ b/src/clients/patch_loader/cmdline.h
@@ -0,0 +1,47 @@
+/* cmdline.h */
+
+/* File autogenerated by gengetopt version 2.10 */
+
+#ifndef CMDLINE_H
+#define CMDLINE_H
+
+/* If we use autoconf. */
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+#ifndef CMDLINE_PARSER_PACKAGE
+#define CMDLINE_PARSER_PACKAGE "om_patch_loader - A command line patch loading client for the Om realtime modular synthesizer"
+#endif
+
+#ifndef CMDLINE_PARSER_VERSION
+#define CMDLINE_PARSER_VERSION VERSION
+#endif
+
+struct gengetopt_args_info
+{
+ char * engine_url_arg; /* Om engine URL to connect to. */
+ int client_port_arg; /* Client port to listen on. */
+
+ int help_given ; /* Whether help was given. */
+ int version_given ; /* Whether version was given. */
+ int engine_url_given ; /* Whether engine-url was given. */
+ int client_port_given ; /* Whether client-port was given. */
+
+ char **inputs ; /* unamed options */
+ unsigned inputs_num ; /* unamed options number */
+} ;
+
+int cmdline_parser (int argc, char * const *argv, struct gengetopt_args_info *args_info);
+
+void cmdline_parser_print_help(void);
+void cmdline_parser_print_version(void);
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+#endif /* CMDLINE_H */
diff --git a/src/clients/patch_loader/new_patch_loader.cpp b/src/clients/patch_loader/new_patch_loader.cpp
new file mode 100644
index 00000000..8884e85b
--- /dev/null
+++ b/src/clients/patch_loader/new_patch_loader.cpp
@@ -0,0 +1,76 @@
+/* This file is part of Om. Copyright (C) 2005 Dave Robillard.
+ *
+ * Om is free software; you can redistribute it and/or modify it under the
+ * terms of the GNU General Public License as published by the Free Software
+ * Foundation; either version 2 of the License, or (at your option) any later
+ * version.
+ *
+ * Om is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <iostream>
+#include <unistd.h>
+#include "cmdline.h" // generated by gengetopt
+#include "util/Path.h"
+#include "OSCEngineInterface.h"
+#include "PatchLibrarian.h"
+
+using std::cout; using std::cerr; using std::endl;
+using Om::Path;
+
+using namespace LibOmClient;
+
+
+int
+main(int argc, char** argv)
+{
+ const char* engine_url = NULL;
+ int client_port = 0;
+
+ /* Parse command line options */
+ gengetopt_args_info args_info;
+ if (cmdline_parser (argc, argv, &args_info) != 0)
+ return 1;
+
+ if (args_info.engine_url_given) {
+ engine_url = args_info.engine_url_arg;
+ } else {
+ cout << "[Main] No engine URL specified. Attempting to use osc.udp://localhost:16180" << endl;
+ engine_url = "osc.udp://localhost:16180";
+ }
+
+ if (args_info.client_port_given)
+ client_port = args_info.client_port_arg;
+ else
+ client_port = 0; // will choose a free port automatically
+
+ OSCEngineInterface engine(engine_url);
+
+ /* Connect to engine */
+ if (!engine.attach()) {
+ cerr << "Unable to connect to engine" << endl;
+ return 1;
+ }
+
+ engine.activate();
+ engine.register_client();
+
+ /*int id = engine.get_next_request_id();
+ engine.set_wait_response_id(id);
+ engine.load_plugins(id);
+ engine.wait_for_response();
+ */
+ engine.load_plugins();
+
+ // Load patches
+ for (uint i=0; i < args_info.inputs_num; ++i)
+ PatchLibrarian::load_patch(&engine, args_info.inputs[i]);
+
+ return 0;
+}
diff --git a/src/clients/patch_loader/patch_loader.cpp b/src/clients/patch_loader/patch_loader.cpp
new file mode 100644
index 00000000..e8579ed7
--- /dev/null
+++ b/src/clients/patch_loader/patch_loader.cpp
@@ -0,0 +1,82 @@
+/* This file is part of Om. Copyright (C) 2005 Dave Robillard.
+ *
+ * Om is free software; you can redistribute it and/or modify it under the
+ * terms of the GNU General Public License as published by the Free Software
+ * Foundation; either version 2 of the License, or (at your option) any later
+ * version.
+ *
+ * Om is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+
+#include "OSCModelEngineInterface.h"
+#include "PatchLibrarian.h"
+#include "PatchModel.h"
+#include "util/Path.h"
+#include <iostream>
+#include <unistd.h>
+#include "cmdline.h" // generated by gengetopt
+
+using std::cout; using std::endl;
+using Om::Path;
+
+using namespace LibOmClient;
+
+int main(int argc, char** argv)
+{
+ const char* engine_url = NULL;
+ int client_port = 0;
+
+ /* **** Parse command line options **** */
+
+ gengetopt_args_info args_info;
+ if (cmdline_parser (argc, argv, &args_info) != 0)
+ return 1;
+
+ if (args_info.engine_url_given) {
+ engine_url = args_info.engine_url_arg;
+ } else {
+ cout << "[Main] No engine URL specified. Attempting to use osc.udp://localhost:16180" << endl;
+ engine_url = "osc.udp://localhost:16180";
+ }
+
+ if (args_info.client_port_given)
+ client_port = args_info.client_port_arg;
+
+
+ /* **** Mr. Spock.. Engage **** */
+
+
+ OSCModelEngineInterface osc_controller(engine_url);
+ PatchLibrarian librarian(&osc_controller);
+
+ /* Connect to engine */
+ osc_controller.attach(client_port);
+ osc_controller.activate();
+ //osc_controller.register_client(NULL); // FIXME
+
+ //int id = osc_controller.get_next_request_id();
+ //osc_controller.set_wait_response_id(id);
+ //osc_controller.load_plugins(id);
+ //osc_controller.wait_for_response();
+ /* FIXME: Make this work like this:
+ * osc_controller.load_plugins();
+ * osc_controller.wait_for_response();
+ */
+
+ // Load patches
+ for (uint i=0; i < args_info.inputs_num; ++i) {
+ PatchModel* pm = new PatchModel("", 0);
+ pm->filename(args_info.inputs[i]);
+ librarian.load_patch(pm, true);
+ delete pm;
+ }
+
+ return 0;
+}