├── .gitignore ├── 3rdParty ├── CMakeLists.txt ├── SRCS │ ├── cxxtest-3.10.1.zip │ ├── db-4.6.21.tar.gz │ ├── libzip-0.9.tar.gz │ └── zlib-1.2.3.tar.gz ├── libdb-4.6.21 │ ├── CMakeLists.txt │ ├── LICENSE │ ├── README │ ├── include-POSIX │ │ ├── clib_port.h │ │ ├── db.h │ │ ├── db_config.h │ │ ├── db_cxx.h │ │ ├── db_int.h │ │ ├── dbinc │ │ │ ├── btree.h │ │ │ ├── clock.h │ │ │ ├── crypto.h │ │ │ ├── db_am.h │ │ │ ├── db_dispatch.h │ │ │ ├── db_join.h │ │ │ ├── db_page.h │ │ │ ├── db_server_int.h │ │ │ ├── db_swap.h │ │ │ ├── db_upgrade.h │ │ │ ├── db_verify.h │ │ │ ├── debug.h │ │ │ ├── fop.h │ │ │ ├── globals.h │ │ │ ├── hash.h │ │ │ ├── hmac.h │ │ │ ├── lock.h │ │ │ ├── log.h │ │ │ ├── mp.h │ │ │ ├── mutex.h │ │ │ ├── mutex_int.h │ │ │ ├── os.h │ │ │ ├── qam.h │ │ │ ├── queue.h │ │ │ ├── region.h │ │ │ ├── rep.h │ │ │ ├── repmgr.h │ │ │ ├── shqueue.h │ │ │ ├── tcl_db.h │ │ │ ├── txn.h │ │ │ ├── win_db.h │ │ │ └── xa.h │ │ └── dbinc_auto │ │ │ ├── btree_auto.h │ │ │ ├── btree_ext.h │ │ │ ├── clib_ext.h │ │ │ ├── common_ext.h │ │ │ ├── crdel_auto.h │ │ │ ├── crypto_ext.h │ │ │ ├── db_auto.h │ │ │ ├── db_ext.h │ │ │ ├── dbreg_auto.h │ │ │ ├── dbreg_ext.h │ │ │ ├── env_ext.h │ │ │ ├── fileops_auto.h │ │ │ ├── fileops_ext.h │ │ │ ├── hash_auto.h │ │ │ ├── hash_ext.h │ │ │ ├── hmac_ext.h │ │ │ ├── lock_ext.h │ │ │ ├── log_ext.h │ │ │ ├── mp_ext.h │ │ │ ├── mutex_ext.h │ │ │ ├── os_ext.h │ │ │ ├── qam_auto.h │ │ │ ├── qam_ext.h │ │ │ ├── rep_auto.h │ │ │ ├── rep_ext.h │ │ │ ├── repmgr_ext.h │ │ │ ├── rpc_client_ext.h │ │ │ ├── rpc_server_ext.h │ │ │ ├── sequence_ext.h │ │ │ ├── tcl_ext.h │ │ │ ├── txn_auto.h │ │ │ ├── txn_ext.h │ │ │ └── xa_ext.h │ ├── include-WIN32 │ │ ├── clib_port.h │ │ ├── db.h │ │ ├── db_codegen.h │ │ ├── db_config.h │ │ ├── db_cxx.h │ │ ├── db_int.h │ │ ├── dbinc │ │ │ ├── btree.h │ │ │ ├── clock.h │ │ │ ├── crypto.h │ │ │ ├── cxx_int.h │ │ │ ├── db.in │ │ │ ├── db_185.in │ │ │ ├── db_am.h │ │ │ ├── db_cxx.in │ │ │ ├── db_dispatch.h │ │ │ ├── db_int.in │ │ │ ├── db_join.h │ │ │ ├── db_page.h │ │ │ ├── db_server_int.h │ │ │ ├── db_swap.h │ │ │ ├── db_upgrade.h │ │ │ ├── db_verify.h │ │ │ ├── debug.h │ │ │ ├── fop.h │ │ │ ├── globals.h │ │ │ ├── hash.h │ │ │ ├── hmac.h │ │ │ ├── lock.h │ │ │ ├── log.h │ │ │ ├── mp.h │ │ │ ├── mutex.h │ │ │ ├── mutex_int.h │ │ │ ├── os.h │ │ │ ├── qam.h │ │ │ ├── queue.h │ │ │ ├── region.h │ │ │ ├── rep.h │ │ │ ├── repmgr.h │ │ │ ├── shqueue.h │ │ │ ├── tcl_db.h │ │ │ ├── txn.h │ │ │ ├── win_db.h │ │ │ └── xa.h │ │ └── dbinc_auto │ │ │ ├── btree_auto.h │ │ │ ├── btree_ext.h │ │ │ ├── clib_ext.h │ │ │ ├── common_ext.h │ │ │ ├── crdel_auto.h │ │ │ ├── crypto_ext.h │ │ │ ├── db_auto.h │ │ │ ├── db_ext.h │ │ │ ├── dbreg_auto.h │ │ │ ├── dbreg_ext.h │ │ │ ├── env_ext.h │ │ │ ├── ext_185_def.in │ │ │ ├── ext_185_prot.in │ │ │ ├── ext_def.in │ │ │ ├── ext_prot.in │ │ │ ├── fileops_auto.h │ │ │ ├── fileops_ext.h │ │ │ ├── hash_auto.h │ │ │ ├── hash_ext.h │ │ │ ├── hmac_ext.h │ │ │ ├── int_def.in │ │ │ ├── lock_ext.h │ │ │ ├── log_ext.h │ │ │ ├── mp_ext.h │ │ │ ├── mutex_ext.h │ │ │ ├── os_ext.h │ │ │ ├── qam_auto.h │ │ │ ├── qam_ext.h │ │ │ ├── rep_auto.h │ │ │ ├── rep_ext.h │ │ │ ├── repmgr_ext.h │ │ │ ├── rpc_client_ext.h │ │ │ ├── rpc_server_ext.h │ │ │ ├── sequence_ext.h │ │ │ ├── tcl_ext.h │ │ │ ├── txn_auto.h │ │ │ ├── txn_ext.h │ │ │ └── xa_ext.h │ ├── src-POSIX │ │ ├── bt_compact.c │ │ ├── bt_compare.c │ │ ├── bt_conv.c │ │ ├── bt_curadj.c │ │ ├── bt_cursor.c │ │ ├── bt_delete.c │ │ ├── bt_method.c │ │ ├── bt_open.c │ │ ├── bt_put.c │ │ ├── bt_rec.c │ │ ├── bt_reclaim.c │ │ ├── bt_recno.c │ │ ├── bt_rsearch.c │ │ ├── bt_search.c │ │ ├── bt_split.c │ │ ├── bt_stat.c │ │ ├── bt_upgrade.c │ │ ├── btree_auto.c │ │ ├── crdel_auto.c │ │ ├── crdel_rec.c │ │ ├── crypto_stub.c │ │ ├── ctime.c │ │ ├── db.c │ │ ├── db_am.c │ │ ├── db_auto.c │ │ ├── db_byteorder.c │ │ ├── db_cam.c │ │ ├── db_cds.c │ │ ├── db_conv.c │ │ ├── db_dispatch.c │ │ ├── db_dup.c │ │ ├── db_err.c │ │ ├── db_getlong.c │ │ ├── db_idspace.c │ │ ├── db_iface.c │ │ ├── db_join.c │ │ ├── db_log2.c │ │ ├── db_meta.c │ │ ├── db_method.c │ │ ├── db_open.c │ │ ├── db_overflow.c │ │ ├── db_pr.c │ │ ├── db_rec.c │ │ ├── db_reclaim.c │ │ ├── db_remove.c │ │ ├── db_rename.c │ │ ├── db_ret.c │ │ ├── db_setid.c │ │ ├── db_setlsn.c │ │ ├── db_shash.c │ │ ├── db_stati.c │ │ ├── db_truncate.c │ │ ├── db_upg.c │ │ ├── db_upg_opd.c │ │ ├── db_vrfy_stub.c │ │ ├── dbm.c │ │ ├── dbreg.c │ │ ├── dbreg_auto.c │ │ ├── dbreg_rec.c │ │ ├── dbreg_stat.c │ │ ├── dbreg_util.c │ │ ├── env_alloc.c │ │ ├── env_config.c │ │ ├── env_failchk.c │ │ ├── env_file.c │ │ ├── env_globals.c │ │ ├── env_method.c │ │ ├── env_name.c │ │ ├── env_open.c │ │ ├── env_recover.c │ │ ├── env_region.c │ │ ├── env_register.c │ │ ├── env_stat.c │ │ ├── fileops_auto.c │ │ ├── fop_basic.c │ │ ├── fop_rec.c │ │ ├── fop_util.c │ │ ├── hash_func.c │ │ ├── hash_stub.c │ │ ├── hmac.c │ │ ├── hsearch.c │ │ ├── lock_stub.c │ │ ├── log.c │ │ ├── log_archive.c │ │ ├── log_compare.c │ │ ├── log_debug.c │ │ ├── log_get.c │ │ ├── log_method.c │ │ ├── log_put.c │ │ ├── log_stat.c │ │ ├── mkpath.c │ │ ├── mp_alloc.c │ │ ├── mp_bh.c │ │ ├── mp_fget.c │ │ ├── mp_fmethod.c │ │ ├── mp_fopen.c │ │ ├── mp_fput.c │ │ ├── mp_fset.c │ │ ├── mp_method.c │ │ ├── mp_mvcc.c │ │ ├── mp_region.c │ │ ├── mp_register.c │ │ ├── mp_resize.c │ │ ├── mp_stat.c │ │ ├── mp_sync.c │ │ ├── mp_trickle.c │ │ ├── mut_stub.c │ │ ├── os_abort.c │ │ ├── os_abs.c │ │ ├── os_alloc.c │ │ ├── os_clock.c │ │ ├── os_config.c │ │ ├── os_dir.c │ │ ├── os_errno.c │ │ ├── os_fid.c │ │ ├── os_flock.c │ │ ├── os_fsync.c │ │ ├── os_fzero.c │ │ ├── os_getenv.c │ │ ├── os_handle.c │ │ ├── os_map.c │ │ ├── os_method.c │ │ ├── os_mkdir.c │ │ ├── os_oflags.c │ │ ├── os_open.c │ │ ├── os_pid.c │ │ ├── os_region.c │ │ ├── os_rename.c │ │ ├── os_root.c │ │ ├── os_rpath.c │ │ ├── os_rw.c │ │ ├── os_seek.c │ │ ├── os_sleep.c │ │ ├── os_spin.c │ │ ├── os_stat.c │ │ ├── os_tmpdir.c │ │ ├── os_truncate.c │ │ ├── os_uid.c │ │ ├── os_unlink.c │ │ ├── os_yield.c │ │ ├── qam_stub.c │ │ ├── rep_stub.c │ │ ├── repmgr_stub.c │ │ ├── seq_stat.c │ │ ├── sequence.c │ │ ├── sha1.c │ │ ├── snprintf.c │ │ ├── txn.c │ │ ├── txn_auto.c │ │ ├── txn_chkpt.c │ │ ├── txn_failchk.c │ │ ├── txn_method.c │ │ ├── txn_rec.c │ │ ├── txn_recover.c │ │ ├── txn_region.c │ │ ├── txn_stat.c │ │ ├── txn_util.c │ │ ├── xa.c │ │ ├── xa_db.c │ │ └── xa_map.c │ └── src-WIN32 │ │ ├── bt_compact.c │ │ ├── bt_compare.c │ │ ├── bt_conv.c │ │ ├── bt_curadj.c │ │ ├── bt_cursor.c │ │ ├── bt_delete.c │ │ ├── bt_method.c │ │ ├── bt_open.c │ │ ├── bt_put.c │ │ ├── bt_rec.c │ │ ├── bt_reclaim.c │ │ ├── bt_recno.c │ │ ├── bt_rsearch.c │ │ ├── bt_search.c │ │ ├── bt_split.c │ │ ├── bt_stat.c │ │ ├── bt_upgrade.c │ │ ├── bt_verify.c │ │ ├── btree_auto.c │ │ ├── btree_autop.c │ │ ├── code_capi.c │ │ ├── code_parse.c │ │ ├── crdel_auto.c │ │ ├── crdel_autop.c │ │ ├── crdel_rec.c │ │ ├── crypto_stub.c │ │ ├── ctime.c │ │ ├── db.c │ │ ├── db_am.c │ │ ├── db_auto.c │ │ ├── db_autop.c │ │ ├── db_byteorder.c │ │ ├── db_cam.c │ │ ├── db_cds.c │ │ ├── db_conv.c │ │ ├── db_dispatch.c │ │ ├── db_dup.c │ │ ├── db_err.c │ │ ├── db_getlong.c │ │ ├── db_idspace.c │ │ ├── db_iface.c │ │ ├── db_join.c │ │ ├── db_log2.c │ │ ├── db_meta.c │ │ ├── db_method.c │ │ ├── db_open.c │ │ ├── db_overflow.c │ │ ├── db_ovfl_vrfy.c │ │ ├── db_pr.c │ │ ├── db_rec.c │ │ ├── db_reclaim.c │ │ ├── db_remove.c │ │ ├── db_rename.c │ │ ├── db_ret.c │ │ ├── db_setid.c │ │ ├── db_setlsn.c │ │ ├── db_shash.c │ │ ├── db_stat.c │ │ ├── db_stati.c │ │ ├── db_truncate.c │ │ ├── db_upg.c │ │ ├── db_upg_opd.c │ │ ├── db_vrfy.c │ │ ├── db_vrfyutil.c │ │ ├── dbm.c │ │ ├── dbreg.c │ │ ├── dbreg_auto.c │ │ ├── dbreg_autop.c │ │ ├── dbreg_rec.c │ │ ├── dbreg_stat.c │ │ ├── dbreg_util.c │ │ ├── env_alloc.c │ │ ├── env_config.c │ │ ├── env_failchk.c │ │ ├── env_file.c │ │ ├── env_globals.c │ │ ├── env_method.c │ │ ├── env_name.c │ │ ├── env_open.c │ │ ├── env_recover.c │ │ ├── env_region.c │ │ ├── env_register.c │ │ ├── env_stat.c │ │ ├── fileops_auto.c │ │ ├── fileops_autop.c │ │ ├── fop_basic.c │ │ ├── fop_rec.c │ │ ├── fop_util.c │ │ ├── hash.c │ │ ├── hash_auto.c │ │ ├── hash_autop.c │ │ ├── hash_conv.c │ │ ├── hash_dup.c │ │ ├── hash_func.c │ │ ├── hash_meta.c │ │ ├── hash_method.c │ │ ├── hash_open.c │ │ ├── hash_page.c │ │ ├── hash_rec.c │ │ ├── hash_reclaim.c │ │ ├── hash_stat.c │ │ ├── hash_upgrade.c │ │ ├── hash_verify.c │ │ ├── hmac.c │ │ ├── hsearch.c │ │ ├── lock.c │ │ ├── lock_deadlock.c │ │ ├── lock_failchk.c │ │ ├── lock_id.c │ │ ├── lock_list.c │ │ ├── lock_method.c │ │ ├── lock_region.c │ │ ├── lock_stat.c │ │ ├── lock_timer.c │ │ ├── lock_util.c │ │ ├── log.c │ │ ├── log_archive.c │ │ ├── log_compare.c │ │ ├── log_debug.c │ │ ├── log_get.c │ │ ├── log_method.c │ │ ├── log_put.c │ │ ├── log_stat.c │ │ ├── mkpath.c │ │ ├── mp_alloc.c │ │ ├── mp_bh.c │ │ ├── mp_fget.c │ │ ├── mp_fmethod.c │ │ ├── mp_fopen.c │ │ ├── mp_fput.c │ │ ├── mp_fset.c │ │ ├── mp_method.c │ │ ├── mp_mvcc.c │ │ ├── mp_region.c │ │ ├── mp_register.c │ │ ├── mp_resize.c │ │ ├── mp_stat.c │ │ ├── mp_sync.c │ │ ├── mp_trickle.c │ │ ├── mut_alloc.c │ │ ├── mut_failchk.c │ │ ├── mut_method.c │ │ ├── mut_region.c │ │ ├── mut_stat.c │ │ ├── mut_tas.c │ │ ├── mut_win32.c │ │ ├── os_abort.c │ │ ├── os_abs.c │ │ ├── os_alloc.c │ │ ├── os_clock.c │ │ ├── os_config.c │ │ ├── os_dir.c │ │ ├── os_errno.c │ │ ├── os_fid.c │ │ ├── os_flock.c │ │ ├── os_fsync.c │ │ ├── os_fzero.c │ │ ├── os_getenv.c │ │ ├── os_handle.c │ │ ├── os_map.c │ │ ├── os_method.c │ │ ├── os_mkdir.c │ │ ├── os_oflags.c │ │ ├── os_open.c │ │ ├── os_pid.c │ │ ├── os_region.c │ │ ├── os_rename.c │ │ ├── os_root.c │ │ ├── os_rpath.c │ │ ├── os_rw.c │ │ ├── os_seek.c │ │ ├── os_sleep.c │ │ ├── os_spin.c │ │ ├── os_stat.c │ │ ├── os_tmpdir.c │ │ ├── os_truncate.c │ │ ├── os_uid.c │ │ ├── os_unlink.c │ │ ├── os_yield.c │ │ ├── qam.c │ │ ├── qam_auto.c │ │ ├── qam_autop.c │ │ ├── qam_conv.c │ │ ├── qam_files.c │ │ ├── qam_method.c │ │ ├── qam_open.c │ │ ├── qam_rec.c │ │ ├── qam_stat.c │ │ ├── qam_upgrade.c │ │ ├── qam_verify.c │ │ ├── rep_autop.c │ │ ├── rep_stub.c │ │ ├── repmgr_stub.c │ │ ├── seq_stat.c │ │ ├── sequence.c │ │ ├── sha1.c │ │ ├── snprintf.c │ │ ├── strsep.c │ │ ├── txn.c │ │ ├── txn_auto.c │ │ ├── txn_autop.c │ │ ├── txn_chkpt.c │ │ ├── txn_failchk.c │ │ ├── txn_method.c │ │ ├── txn_rec.c │ │ ├── txn_recover.c │ │ ├── txn_region.c │ │ ├── txn_stat.c │ │ ├── txn_util.c │ │ ├── util_cache.c │ │ ├── util_log.c │ │ ├── util_sig.c │ │ ├── xa.c │ │ ├── xa_db.c │ │ └── xa_map.c ├── libzip-0.9 │ ├── AUTHORS │ ├── CMakeLists.txt │ ├── NEWS │ ├── README │ ├── THANKS │ ├── include │ │ ├── zip.h │ │ └── zipint.h │ └── src │ │ ├── mkstemp.c │ │ ├── zip_add.c │ │ ├── zip_add_dir.c │ │ ├── zip_close.c │ │ ├── zip_delete.c │ │ ├── zip_dirent.c │ │ ├── zip_entry_free.c │ │ ├── zip_entry_new.c │ │ ├── zip_err_str.c │ │ ├── zip_error.c │ │ ├── zip_error_clear.c │ │ ├── zip_error_get.c │ │ ├── zip_error_get_sys_type.c │ │ ├── zip_error_strerror.c │ │ ├── zip_error_to_str.c │ │ ├── zip_fclose.c │ │ ├── zip_file_error_clear.c │ │ ├── zip_file_error_get.c │ │ ├── zip_file_get_offset.c │ │ ├── zip_file_strerror.c │ │ ├── zip_filerange_crc.c │ │ ├── zip_fopen.c │ │ ├── zip_fopen_index.c │ │ ├── zip_fread.c │ │ ├── zip_free.c │ │ ├── zip_get_archive_comment.c │ │ ├── zip_get_archive_flag.c │ │ ├── zip_get_file_comment.c │ │ ├── zip_get_name.c │ │ ├── zip_get_num_files.c │ │ ├── zip_memdup.c │ │ ├── zip_name_locate.c │ │ ├── zip_new.c │ │ ├── zip_open.c │ │ ├── zip_rename.c │ │ ├── zip_replace.c │ │ ├── zip_set_archive_comment.c │ │ ├── zip_set_archive_flag.c │ │ ├── zip_set_file_comment.c │ │ ├── zip_set_name.c │ │ ├── zip_source_buffer.c │ │ ├── zip_source_file.c │ │ ├── zip_source_filep.c │ │ ├── zip_source_free.c │ │ ├── zip_source_function.c │ │ ├── zip_source_zip.c │ │ ├── zip_stat.c │ │ ├── zip_stat_index.c │ │ ├── zip_stat_init.c │ │ ├── zip_strerror.c │ │ ├── zip_unchange.c │ │ ├── zip_unchange_all.c │ │ ├── zip_unchange_archive.c │ │ └── zip_unchange_data.c ├── protoc-1.0M4.jar └── zlib-1.2.3 │ ├── CMakeLists.txt │ ├── README │ ├── algorithm.txt │ ├── include │ ├── crc32.h │ ├── deflate.h │ ├── inffast.h │ ├── inffixed.h │ ├── inflate.h │ ├── inftrees.h │ ├── trees.h │ ├── zconf.h │ ├── zlib.h │ └── zutil.h │ └── src │ ├── adler32.c │ ├── compress.c │ ├── crc32.c │ ├── deflate.c │ ├── example.c │ ├── gzio.c │ ├── infback.c │ ├── inffast.c │ ├── inflate.c │ ├── inftrees.c │ ├── minigzip.c │ ├── trees.c │ ├── uncompr.c │ └── zutil.c ├── AUTHORS ├── CMakeLists.txt ├── COPYING ├── ChangeLog ├── Data.odvd ├── Diagram.png ├── LICENSE-GPL-v2 ├── LICENSE-LGPL-v2.1 ├── PandaBoard-Toolchain.cmake ├── README ├── README.md ├── _buildtools ├── DataStructureGenerator-r9.jar ├── FindCxxTest.cmake ├── FindRequiredLibraries.cmake └── cxxtest │ ├── COPYING │ ├── README │ ├── TODO │ ├── Versions │ ├── cxxtest.spec │ ├── cxxtest │ ├── Descriptions.cpp │ ├── Descriptions.h │ ├── DummyDescriptions.cpp │ ├── DummyDescriptions.h │ ├── ErrorFormatter.h │ ├── ErrorPrinter.h │ ├── ExecutionLog.h │ ├── Flags.h │ ├── GlobalFixture.cpp │ ├── GlobalFixture.h │ ├── Gui.h │ ├── LinkedList.cpp │ ├── LinkedList.h │ ├── Memwatch.cpp │ ├── Mock.h │ ├── ParenPrinter.h │ ├── QtGui.h │ ├── RealDescriptions.cpp │ ├── RealDescriptions.h │ ├── Root.cpp │ ├── SelfTest.h │ ├── Signals.h │ ├── Stacktrace.cpp │ ├── StdHeaders.h │ ├── StdString.h │ ├── StdValueTraits.h │ ├── StdioFilePrinter.h │ ├── StdioPrinter.h │ ├── TeeListener.h │ ├── TestListener.h │ ├── TestRunner.h │ ├── TestSuite.cpp │ ├── TestSuite.h │ ├── TestTracker.cpp │ ├── TestTracker.h │ ├── ValueTraits.cpp │ ├── ValueTraits.h │ ├── Win32Gui.h │ ├── X11Gui.h │ ├── XmlFilePrinter.h │ ├── XmlFormatter.h │ ├── XmlStdioPrinter.h │ └── YesNoRunner.h │ ├── cxxtestgen.pl │ ├── cxxtestgen.py │ └── docs │ ├── convert.pl │ ├── guide.html │ ├── index.html │ ├── qt.png │ ├── qt2.png │ ├── win32.png │ └── x11.png ├── add_remote_Autodrive.sh ├── apps ├── AutodriveSim │ ├── Autodrive │ │ ├── .gitignore │ │ ├── Diagram.png │ │ ├── Include │ │ │ ├── autodrive.hpp │ │ │ ├── command.hpp │ │ │ ├── imageprocessor │ │ │ │ ├── birdseyetransformer.hpp │ │ │ │ ├── imageprocessor.hpp │ │ │ │ ├── lightnormalizer.hpp │ │ │ │ ├── line.hpp │ │ │ │ ├── linefollower.hpp │ │ │ │ ├── roadfollower.hpp │ │ │ │ ├── roadline.hpp │ │ │ │ ├── roadlinebuilder.hpp │ │ │ │ └── util.hpp │ │ │ ├── maneuver.hpp │ │ │ ├── parking.hpp │ │ │ ├── sensordata.hpp │ │ │ └── settings.hpp │ │ ├── README.md │ │ └── Sample │ │ │ ├── CMakeLists.txt │ │ │ ├── main.cpp │ │ │ ├── testdrive.mp4 │ │ │ └── testreal_small.mp4 │ ├── CMakeLists.txt │ ├── apps │ │ └── MainModule.cpp │ ├── include │ │ └── AutodriveSim.hpp │ └── src │ │ └── AutodriveSim.cpp └── CMakeLists.txt ├── autodrive.sh ├── build.sh ├── build └── placeholder ├── compile.sh ├── doxygen.cfg ├── generateDataStructures.sh ├── hesperia ├── CMakeLists.txt ├── Scenarios │ ├── MissingInnerLaneMarking.scnx │ ├── MissingOuterLaneMarking.scnx │ ├── Models │ │ ├── FordEscape.objx │ │ └── RedRocketCar.objx │ ├── No-obstacles.scnx │ ├── NoObstacles_NoStopLines.scnx │ ├── NoObstacles_StopLines.scnx │ ├── ObstacleInFirstCurve.scnx │ ├── ObstacleOnStraightRoad.scnx │ ├── ObstaclesAtIntersections_StopLines.scnx │ ├── Overtaking-easy.scnx │ ├── Overtaking-hard.scnx │ ├── Overtaking-medium.scnx │ ├── Parking-easy.scnx │ ├── Parking-hard.scnx │ ├── Parking-medium.scnx │ ├── Parking-sideways.scnx │ ├── ReferenceAxes.scnx │ ├── SEM_Parking_Parallel_Advanced.scnx │ ├── SEM_Parking_Parallel_Simple.scnx │ ├── SEM_Parking_Perpendicular_Advanced.scnx │ └── SEM_Parking_Perpendicular_Simple.scnx ├── camgen │ ├── CMakeLists.txt │ ├── apps │ │ └── camgen.cpp │ ├── include │ │ ├── CamGen.h │ │ └── OpenGLGrabber.h │ └── src │ │ ├── CamGen.cpp │ │ └── OpenGLGrabber.cpp ├── chasecar │ ├── CMakeLists.txt │ ├── apps │ │ └── chasecar.cpp │ ├── include │ │ ├── ChaseCar.h │ │ └── OpenGLGrabber.h │ └── src │ │ ├── ChaseCar.cpp │ │ └── OpenGLGrabber.cpp ├── cockpit │ ├── CMakeLists.txt │ ├── apps │ │ └── MainModule.cpp │ ├── cockpit_de_DE.ts │ ├── cockpit_en_US.ts │ ├── include │ │ ├── Cockpit.h │ │ ├── CockpitWindow.h │ │ ├── ContainerObserver.h │ │ ├── FIFOMultiplexer.h │ │ ├── MdiPlugIn.h │ │ ├── QtIncludes.h │ │ └── plugins │ │ │ ├── AbstractGLWidget.h │ │ │ ├── ControlPlugIn.h │ │ │ ├── GLControlFrame.h │ │ │ ├── PlugIn.h │ │ │ ├── PlugInProvider.h │ │ │ ├── birdseyemap │ │ │ ├── BirdsEyeMapMapWidget.h │ │ │ ├── BirdsEyeMapPlugIn.h │ │ │ ├── BirdsEyeMapRenderer.h │ │ │ ├── BirdsEyeMapWidget.h │ │ │ ├── CameraAssignableNodesListener.h │ │ │ ├── SelectableNodeDescriptor.h │ │ │ ├── SelectableNodeDescriptorTreeListener.h │ │ │ └── TreeNodeVisitor.h │ │ │ ├── configurationviewer │ │ │ ├── ConfigurationViewerPlugIn.h │ │ │ └── ConfigurationViewerWidget.h │ │ │ ├── controller │ │ │ ├── ControllerPlugIn.h │ │ │ └── ControllerWidget.h │ │ │ ├── cutter │ │ │ ├── CutterPlugIn.h │ │ │ └── CutterWidget.h │ │ │ ├── environmentviewer │ │ │ ├── CameraAssignableNodesListener.h │ │ │ ├── EnvironmentViewerGLWidget.h │ │ │ ├── EnvironmentViewerPlugIn.h │ │ │ ├── EnvironmentViewerWidget.h │ │ │ ├── SelectableNodeDescriptor.h │ │ │ ├── SelectableNodeDescriptorTreeListener.h │ │ │ └── TreeNodeVisitor.h │ │ │ ├── forcecontrolviewer │ │ │ ├── ForceControlData.h │ │ │ ├── ForceControlViewerPlugIn.h │ │ │ └── ForceControlViewerWidget.h │ │ │ ├── iruscharts │ │ │ ├── IrUsChartData.h │ │ │ ├── IrUsChartsPlugIn.h │ │ │ └── IrUsChartsWidget.h │ │ │ ├── irusmap │ │ │ ├── IrUsMapPlugIn.h │ │ │ ├── IrUsMapWidget.h │ │ │ ├── IrUsMapWidgetControl.h │ │ │ └── PointSensor.h │ │ │ ├── modulestatisticsviewer │ │ │ ├── LoadPerModule.h │ │ │ ├── LoadPlot.h │ │ │ ├── ModuleStatisticsViewerPlugIn.h │ │ │ └── ModuleStatisticsViewerWidget.h │ │ │ ├── objxviewer │ │ │ ├── OBJXGLWidget.h │ │ │ ├── OBJXViewerPlugIn.h │ │ │ └── OBJXViewerWidget.h │ │ │ ├── player │ │ │ ├── PlayerPlugIn.h │ │ │ └── PlayerWidget.h │ │ │ ├── scnxviewer │ │ │ ├── SCNXGLWidget.h │ │ │ ├── SCNXViewerPlugIn.h │ │ │ └── SCNXViewerWidget.h │ │ │ ├── sharedimageviewer │ │ │ ├── SharedImageViewerPlugIn.h │ │ │ └── SharedImageViewerWidget.h │ │ │ └── spy │ │ │ ├── SpyPlugIn.h │ │ │ └── SpyWidget.h │ └── src │ │ ├── Cockpit.cpp │ │ ├── CockpitWindow.cpp │ │ ├── ContainerObserver.cpp │ │ ├── FIFOMultiplexer.cpp │ │ ├── MdiPlugIn.cpp │ │ └── plugins │ │ ├── AbstractGLWidget.cpp │ │ ├── ControlPlugIn.cpp │ │ ├── GLControlFrame.cpp │ │ ├── PlugIn.cpp │ │ ├── PlugInProvider.cpp │ │ ├── birdseyemap │ │ ├── BirdsEyeMapMapWidget.cpp │ │ ├── BirdsEyeMapPlugIn.cpp │ │ ├── BirdsEyeMapRenderer.cpp │ │ ├── BirdsEyeMapWidget.cpp │ │ ├── CameraAssignableNodesListener.cpp │ │ ├── SelectableNodeDescriptor.cpp │ │ ├── SelectableNodeDescriptorTreeListener.cpp │ │ └── TreeNodeVisitor.cpp │ │ ├── configurationviewer │ │ ├── ConfigurationViewerPlugIn.cpp │ │ └── ConfigurationViewerWidget.cpp │ │ ├── controller │ │ ├── ControllerPlugIn.cpp │ │ └── ControllerWidget.cpp │ │ ├── cutter │ │ ├── CutterPlugIn.cpp │ │ └── CutterWidget.cpp │ │ ├── environmentviewer │ │ ├── CameraAssignableNodesListener.cpp │ │ ├── EnvironmentViewerGLWidget.cpp │ │ ├── EnvironmentViewerPlugIn.cpp │ │ ├── EnvironmentViewerWidget.cpp │ │ ├── SelectableNodeDescriptor.cpp │ │ ├── SelectableNodeDescriptorTreeListener.cpp │ │ └── TreeNodeVisitor.cpp │ │ ├── forcecontrolviewer │ │ ├── ForceControlData.cpp │ │ ├── ForceControlViewerPlugIn.cpp │ │ └── ForceControlViewerWidget.cpp │ │ ├── iruscharts │ │ ├── IrUsChartData.cpp │ │ ├── IrUsChartsPlugIn.cpp │ │ └── IrUsChartsWidget.cpp │ │ ├── irusmap │ │ ├── IrUsMapPlugIn.cpp │ │ ├── IrUsMapWidget.cpp │ │ ├── IrUsMapWidgetControl.cpp │ │ └── PointSensor.cpp │ │ ├── modulestatisticsviewer │ │ ├── LoadPerModule.cpp │ │ ├── LoadPlot.cpp │ │ ├── ModuleStatisticsViewerPlugIn.cpp │ │ └── ModuleStatisticsViewerWidget.cpp │ │ ├── objxviewer │ │ ├── OBJXGLWidget.cpp │ │ ├── OBJXViewerPlugIn.cpp │ │ └── OBJXViewerWidget.cpp │ │ ├── player │ │ ├── PlayerPlugIn.cpp │ │ └── PlayerWidget.cpp │ │ ├── scnxviewer │ │ ├── SCNXGLWidget.cpp │ │ ├── SCNXViewerPlugIn.cpp │ │ └── SCNXViewerWidget.cpp │ │ ├── sharedimageviewer │ │ ├── SharedImageViewerPlugIn.cpp │ │ └── SharedImageViewerWidget.cpp │ │ └── spy │ │ ├── SpyPlugIn.cpp │ │ └── SpyWidget.cpp ├── drivenpath │ ├── CMakeLists.txt │ ├── apps │ │ └── drivenpath.cpp │ ├── include │ │ └── DrivenPath.h │ └── src │ │ └── DrivenPath.cpp ├── egocontroller │ ├── CMakeLists.txt │ ├── apps │ │ └── egocontroller.cpp │ ├── include │ │ ├── ControlBehaviour.h │ │ ├── Controller.h │ │ ├── EgoController.h │ │ ├── ForceControlBehaviour.h │ │ ├── ForceControlBehaviourBicycleModel.h │ │ ├── ForceControlBehaviourSimplifiedBicycleModel.h │ │ ├── JoystickController.h │ │ ├── KeyBoardController.h │ │ ├── LinearBicycleModelBehaviour.h │ │ └── SimpleControlBehaviour.h │ └── src │ │ ├── ControlBehaviour.cpp │ │ ├── Controller.cpp │ │ ├── EgoController.cpp │ │ ├── ForceControlBehaviour.cpp │ │ ├── ForceControlBehaviourBicycleModel.cpp │ │ ├── ForceControlBehaviourSimplifiedBicycleModel.cpp │ │ ├── JoystickController.cpp │ │ ├── KeyBoardController.cpp │ │ ├── LinearBicycleModelBehaviour.cpp │ │ └── SimpleControlBehaviour.cpp ├── irus │ ├── CMakeLists.txt │ ├── apps │ │ └── irus.cpp │ ├── include │ │ ├── IRUS.h │ │ └── PointSensor.h │ └── src │ │ ├── IRUS.cpp │ │ └── PointSensor.cpp ├── libhesperia │ ├── CMakeLists.txt │ ├── include │ │ ├── core │ │ │ └── wrapper │ │ │ │ ├── HesperiaLibraries.h │ │ │ │ ├── Image.h │ │ │ │ ├── ImageFactory.h │ │ │ │ ├── Matrix.h │ │ │ │ ├── MatrixFactory.h │ │ │ │ ├── OpenCV │ │ │ │ ├── OpenCVImage.h │ │ │ │ ├── OpenCVImageFactory.h │ │ │ │ ├── OpenCVMatrix.h │ │ │ │ └── OpenCVMatrixFactory.h │ │ │ │ ├── graph │ │ │ │ ├── DirectedGraph.h │ │ │ │ ├── Edge.h │ │ │ │ └── Vertex.h │ │ │ │ └── parser │ │ │ │ ├── ASTNode.h │ │ │ │ ├── ASTPrettyPrinter.h │ │ │ │ ├── ASTVisitor.h │ │ │ │ ├── BoostSpiritGrammar.h │ │ │ │ ├── Grammar.h │ │ │ │ ├── ParserError.h │ │ │ │ ├── ParserErrorExtendedData.h │ │ │ │ ├── ParserErrorListener.h │ │ │ │ ├── ParserToken.h │ │ │ │ ├── ParserTokenExtendedData.h │ │ │ │ └── ParserTokenListener.h │ │ └── hesperia │ │ │ ├── data │ │ │ ├── camera │ │ │ │ ├── ExtrinsicParameters.h │ │ │ │ ├── ImageGrabberCalibration.h │ │ │ │ ├── ImageGrabberID.h │ │ │ │ └── IntrinsicParameters.h │ │ │ ├── environment │ │ │ │ ├── EgoState.h │ │ │ │ ├── Line.h │ │ │ │ ├── NamedLine.h │ │ │ │ ├── Obstacle.h │ │ │ │ ├── OtherVehicleState.h │ │ │ │ ├── PointShapedObject.h │ │ │ │ ├── Polygon.h │ │ │ │ ├── Quaternion.h │ │ │ │ └── WGS84Coordinate.h │ │ │ ├── graph │ │ │ │ ├── WaypointVertex.h │ │ │ │ └── WaypointsEdge.h │ │ │ ├── planning │ │ │ │ └── Route.h │ │ │ ├── scenario │ │ │ │ ├── Arc.h │ │ │ │ ├── BoundingBox.h │ │ │ │ ├── Clothoid.h │ │ │ │ ├── ComplexModel.h │ │ │ │ ├── Connector.h │ │ │ │ ├── CoordinateSystem.h │ │ │ │ ├── Cylinder.h │ │ │ │ ├── Ground.h │ │ │ │ ├── Header.h │ │ │ │ ├── HeightImage.h │ │ │ │ ├── IDVertex3.h │ │ │ │ ├── Image.h │ │ │ │ ├── Lane.h │ │ │ │ ├── LaneAttribute.h │ │ │ │ ├── LaneModel.h │ │ │ │ ├── Layer.h │ │ │ │ ├── Perimeter.h │ │ │ │ ├── PointID.h │ │ │ │ ├── PointModel.h │ │ │ │ ├── Polygon.h │ │ │ │ ├── Road.h │ │ │ │ ├── Scenario.h │ │ │ │ ├── ScenarioNode.h │ │ │ │ ├── ScenarioVisitor.h │ │ │ │ ├── Shape.h │ │ │ │ ├── Spot.h │ │ │ │ ├── StraightLine.h │ │ │ │ ├── Surroundings.h │ │ │ │ ├── TrafficControl.h │ │ │ │ ├── TrafficLight.h │ │ │ │ ├── TrafficSign.h │ │ │ │ ├── Vertex3.h │ │ │ │ ├── WGS84CoordinateSystem.h │ │ │ │ └── Zone.h │ │ │ ├── sensor │ │ │ │ ├── ContouredObject.h │ │ │ │ ├── ContouredObjects.h │ │ │ │ ├── LMS291Message.h │ │ │ │ └── nmea │ │ │ │ │ └── GPRMC.h │ │ │ └── situation │ │ │ │ ├── Behavior.h │ │ │ │ ├── BoundingBox.h │ │ │ │ ├── ComplexModel.h │ │ │ │ ├── ExternalDriver.h │ │ │ │ ├── Header.h │ │ │ │ ├── Immediately.h │ │ │ │ ├── Object.h │ │ │ │ ├── OnEnteringPolygon.h │ │ │ │ ├── OnMoving.h │ │ │ │ ├── PointID.h │ │ │ │ ├── PointIDDriver.h │ │ │ │ ├── Polygon.h │ │ │ │ ├── Rectangle.h │ │ │ │ ├── ReturnToStart.h │ │ │ │ ├── Shape.h │ │ │ │ ├── Situation.h │ │ │ │ ├── SituationNode.h │ │ │ │ ├── SituationVisitor.h │ │ │ │ ├── StartType.h │ │ │ │ ├── Stop.h │ │ │ │ ├── StopType.h │ │ │ │ ├── Vertex3.h │ │ │ │ └── WarpToStart.h │ │ │ ├── decorator │ │ │ ├── Data2StringStream.h │ │ │ ├── DataRenderer.h │ │ │ ├── Renderer.h │ │ │ ├── ScenarioRenderer.h │ │ │ ├── models │ │ │ │ ├── Material.h │ │ │ │ ├── OBJXArchive.h │ │ │ │ ├── OBJXArchiveFactory.h │ │ │ │ ├── Triangle.h │ │ │ │ └── TriangleSet.h │ │ │ ├── threeD │ │ │ │ └── Renderer3D.h │ │ │ └── twoD │ │ │ │ └── Renderer2D.h │ │ │ ├── io │ │ │ └── camera │ │ │ │ └── ImageGrabber.h │ │ │ ├── math │ │ │ └── Transformation.h │ │ │ ├── scenario │ │ │ ├── FindNodeByPointIDVisitor.h │ │ │ ├── GroundBasedComplexModelLoader.h │ │ │ ├── LaneVisitor.h │ │ │ ├── SCNGrammar.h │ │ │ ├── SCNScenarioVisitor.h │ │ │ ├── SCNXArchive.h │ │ │ ├── SCNXArchiveFactory.h │ │ │ ├── ScenarioFactory.h │ │ │ ├── ScenarioOpenGLSceneTransformation.h │ │ │ └── ScenarioPrettyPrinter.h │ │ │ ├── scenegraph │ │ │ ├── SceneNode.h │ │ │ ├── SceneNodeDescriptor.h │ │ │ ├── SceneNodeDescriptorComparator.h │ │ │ ├── SceneNodeVisitor.h │ │ │ ├── models │ │ │ │ ├── Grid.h │ │ │ │ ├── SimpleCar.h │ │ │ │ └── XYAxes.h │ │ │ ├── primitives │ │ │ │ ├── Line.h │ │ │ │ ├── Point.h │ │ │ │ └── Polygon.h │ │ │ ├── renderer │ │ │ │ ├── AbstractRenderer.h │ │ │ │ ├── RenderingConfiguration.h │ │ │ │ └── SceneNodeRenderingConfiguration.h │ │ │ └── transformation │ │ │ │ ├── ScenarioTransformation.h │ │ │ │ └── SceneGraphFactory.h │ │ │ ├── situation │ │ │ ├── SITGrammar.h │ │ │ ├── SITSituationVisitor.h │ │ │ ├── SituationFactory.h │ │ │ └── SituationPrettyPrinter.h │ │ │ └── threeD │ │ │ ├── Camera.h │ │ │ ├── FrameCounter.h │ │ │ ├── GLUTCameraController.h │ │ │ ├── GLUTWindowBase.h │ │ │ ├── Material.h │ │ │ ├── Node.h │ │ │ ├── NodeDescriptor.h │ │ │ ├── NodeDescriptorComparator.h │ │ │ ├── NodeRenderingConfiguration.h │ │ │ ├── RenderingConfiguration.h │ │ │ ├── TextureManager.h │ │ │ ├── TransformGroup.h │ │ │ ├── TransformGroupVisitor.h │ │ │ ├── decorator │ │ │ └── DecoratorFactory.h │ │ │ ├── loaders │ │ │ ├── OBJXArchive.h │ │ │ └── OBJXArchiveFactory.h │ │ │ └── models │ │ │ ├── AerialImage.h │ │ │ ├── CheckerBoard.h │ │ │ ├── Grid.h │ │ │ ├── HeightGrid.h │ │ │ ├── Line.h │ │ │ ├── Point.h │ │ │ ├── Polygon.h │ │ │ ├── Triangle.h │ │ │ ├── TriangleSet.h │ │ │ └── XYZAxes.h │ ├── src │ │ ├── core │ │ │ └── wrapper │ │ │ │ ├── Image.cpp │ │ │ │ ├── ImageFactory.cpp │ │ │ │ ├── Matrix.cpp │ │ │ │ ├── MatrixFactory.cpp │ │ │ │ ├── OpenCV │ │ │ │ ├── OpenCVImage.cpp │ │ │ │ ├── OpenCVImageFactory.cpp │ │ │ │ ├── OpenCVMatrix.cpp │ │ │ │ └── OpenCVMatrixFactory.cpp │ │ │ │ ├── graph │ │ │ │ ├── DirectedGraph.cpp │ │ │ │ ├── Edge.cpp │ │ │ │ └── Vertex.cpp │ │ │ │ └── parser │ │ │ │ ├── ASTNode.cpp │ │ │ │ ├── ASTPrettyPrinter.cpp │ │ │ │ ├── ASTVisitor.cpp │ │ │ │ ├── BoostSpiritGrammar.cpp │ │ │ │ ├── Grammar.cpp │ │ │ │ ├── ParserError.cpp │ │ │ │ ├── ParserErrorExtendedData.cpp │ │ │ │ ├── ParserErrorListener.cpp │ │ │ │ ├── ParserToken.cpp │ │ │ │ ├── ParserTokenExtendedData.cpp │ │ │ │ └── ParserTokenListener.cpp │ │ ├── data │ │ │ ├── camera │ │ │ │ ├── ExtrinsicParameters.cpp │ │ │ │ ├── ImageGrabberCalibration.cpp │ │ │ │ ├── ImageGrabberID.cpp │ │ │ │ └── IntrinsicParameters.cpp │ │ │ ├── environment │ │ │ │ ├── EgoState.cpp │ │ │ │ ├── Line.cpp │ │ │ │ ├── NamedLine.cpp │ │ │ │ ├── Obstacle.cpp │ │ │ │ ├── OtherVehicleState.cpp │ │ │ │ ├── PointShapedObject.cpp │ │ │ │ ├── Polygon.cpp │ │ │ │ ├── Quaternion.cpp │ │ │ │ └── WGS84Coordinate.cpp │ │ │ ├── graph │ │ │ │ ├── WaypointVertex.cpp │ │ │ │ └── WaypointsEdge.cpp │ │ │ ├── planning │ │ │ │ └── Route.cpp │ │ │ ├── scenario │ │ │ │ ├── Arc.cpp │ │ │ │ ├── BoundingBox.cpp │ │ │ │ ├── Clothoid.cpp │ │ │ │ ├── ComplexModel.cpp │ │ │ │ ├── Connector.cpp │ │ │ │ ├── CoordinateSystem.cpp │ │ │ │ ├── Cylinder.cpp │ │ │ │ ├── Ground.cpp │ │ │ │ ├── Header.cpp │ │ │ │ ├── HeightImage.cpp │ │ │ │ ├── IDVertex3.cpp │ │ │ │ ├── Image.cpp │ │ │ │ ├── Lane.cpp │ │ │ │ ├── LaneAttribute.cpp │ │ │ │ ├── LaneModel.cpp │ │ │ │ ├── Layer.cpp │ │ │ │ ├── Perimeter.cpp │ │ │ │ ├── PointID.cpp │ │ │ │ ├── PointModel.cpp │ │ │ │ ├── Polygon.cpp │ │ │ │ ├── Road.cpp │ │ │ │ ├── Scenario.cpp │ │ │ │ ├── ScenarioNode.cpp │ │ │ │ ├── ScenarioVisitor.cpp │ │ │ │ ├── Shape.cpp │ │ │ │ ├── Spot.cpp │ │ │ │ ├── StraightLine.cpp │ │ │ │ ├── Surroundings.cpp │ │ │ │ ├── TrafficControl.cpp │ │ │ │ ├── TrafficLight.cpp │ │ │ │ ├── TrafficSign.cpp │ │ │ │ ├── Vertex3.cpp │ │ │ │ ├── WGS84CoordinateSystem.cpp │ │ │ │ └── Zone.cpp │ │ │ ├── sensor │ │ │ │ ├── ContouredObject.cpp │ │ │ │ ├── ContouredObjects.cpp │ │ │ │ ├── LMS291Message.cpp │ │ │ │ └── nmea │ │ │ │ │ └── GPRMC.cpp │ │ │ └── situation │ │ │ │ ├── Behavior.cpp │ │ │ │ ├── BoundingBox.cpp │ │ │ │ ├── ComplexModel.cpp │ │ │ │ ├── ExternalDriver.cpp │ │ │ │ ├── Header.cpp │ │ │ │ ├── Immediately.cpp │ │ │ │ ├── Object.cpp │ │ │ │ ├── OnEnteringPolygon.cpp │ │ │ │ ├── OnMoving.cpp │ │ │ │ ├── PointID.cpp │ │ │ │ ├── PointIDDriver.cpp │ │ │ │ ├── Polygon.cpp │ │ │ │ ├── Rectangle.cpp │ │ │ │ ├── ReturnToStart.cpp │ │ │ │ ├── Shape.cpp │ │ │ │ ├── Situation.cpp │ │ │ │ ├── SituationNode.cpp │ │ │ │ ├── SituationVisitor.cpp │ │ │ │ ├── StartType.cpp │ │ │ │ ├── Stop.cpp │ │ │ │ ├── StopType.cpp │ │ │ │ ├── Vertex3.cpp │ │ │ │ └── WarpToStart.cpp │ │ ├── decorator │ │ │ ├── Data2StringStream.cpp │ │ │ ├── DataRenderer.cpp │ │ │ ├── Renderer.cpp │ │ │ ├── ScenarioRenderer.cpp │ │ │ ├── models │ │ │ │ ├── Material.cpp │ │ │ │ ├── OBJXArchive.cpp │ │ │ │ ├── OBJXArchiveFactory.cpp │ │ │ │ ├── Triangle.cpp │ │ │ │ └── TriangleSet.cpp │ │ │ ├── threeD │ │ │ │ └── Renderer3D.cpp │ │ │ └── twoD │ │ │ │ └── Renderer2D.cpp │ │ ├── io │ │ │ └── camera │ │ │ │ └── ImageGrabber.cpp │ │ ├── math │ │ │ └── Transformation.cpp │ │ ├── scenario │ │ │ ├── FindNodeByPointIDVisitor.cpp │ │ │ ├── GroundBasedComplexModelLoader.cpp │ │ │ ├── LaneVisitor.cpp │ │ │ ├── SCNGrammar.cpp │ │ │ ├── SCNScenarioVisitor.cpp │ │ │ ├── SCNXArchive.cpp │ │ │ ├── SCNXArchiveFactory.cpp │ │ │ ├── ScenarioFactory.cpp │ │ │ ├── ScenarioOpenGLSceneTransformation.cpp │ │ │ └── ScenarioPrettyPrinter.cpp │ │ ├── scenegraph │ │ │ ├── SceneNode.cpp │ │ │ ├── SceneNodeDescriptor.cpp │ │ │ ├── SceneNodeDescriptorComparator.cpp │ │ │ ├── SceneNodeVisitor.cpp │ │ │ ├── models │ │ │ │ ├── Grid.cpp │ │ │ │ ├── SimpleCar.cpp │ │ │ │ └── XYAxes.cpp │ │ │ ├── primitives │ │ │ │ ├── Line.cpp │ │ │ │ ├── Point.cpp │ │ │ │ └── Polygon.cpp │ │ │ ├── renderer │ │ │ │ ├── AbstractRenderer.cpp │ │ │ │ ├── RenderingConfiguration.cpp │ │ │ │ └── SceneNodeRenderingConfiguration.cpp │ │ │ └── transformation │ │ │ │ ├── ScenarioTransformation.cpp │ │ │ │ └── SceneGraphFactory.cpp │ │ ├── situation │ │ │ ├── SITGrammar.cpp │ │ │ ├── SITSituationVisitor.cpp │ │ │ ├── SituationFactory.cpp │ │ │ └── SituationPrettyPrinter.cpp │ │ └── threeD │ │ │ ├── Camera.cpp │ │ │ ├── FrameCounter.cpp │ │ │ ├── GLUTCameraController.cpp │ │ │ ├── Material.cpp │ │ │ ├── Node.cpp │ │ │ ├── NodeDescriptor.cpp │ │ │ ├── NodeDescriptorComparator.cpp │ │ │ ├── NodeRenderingConfiguration.cpp │ │ │ ├── RenderingConfiguration.cpp │ │ │ ├── TextureManager.cpp │ │ │ ├── TransformGroup.cpp │ │ │ ├── TransformGroupVisitor.cpp │ │ │ ├── decorator │ │ │ └── DecoratorFactory.cpp │ │ │ ├── loaders │ │ │ ├── OBJXArchive.cpp │ │ │ └── OBJXArchiveFactory.cpp │ │ │ └── models │ │ │ ├── AerialImage.cpp │ │ │ ├── CheckerBoard.cpp │ │ │ ├── Grid.cpp │ │ │ ├── HeightGrid.cpp │ │ │ ├── Line.cpp │ │ │ ├── Point.cpp │ │ │ ├── Polygon.cpp │ │ │ ├── Triangle.cpp │ │ │ ├── TriangleSet.cpp │ │ │ └── XYZAxes.cpp │ └── testsuites │ │ ├── ContouredObjectTestSuite.h │ │ ├── EgoStateTestSuite.h │ │ ├── PointShapedObjectTestSuite.h │ │ ├── QuaternionTestSuite.h │ │ ├── ScenarioTestSuite.h │ │ ├── SceneGraphTestSuite.h │ │ ├── SituationTestSuite.h │ │ ├── TestImage.png │ │ └── WGS84CoordinateTestSuite.h ├── rec2stdout │ ├── CMakeLists.txt │ ├── apps │ │ └── rec2stdout.cpp │ ├── include │ │ └── Rec2Stdout.h │ └── src │ │ └── Rec2Stdout.cpp └── vehicle │ ├── CMakeLists.txt │ ├── apps │ └── vehicle.cpp │ ├── include │ ├── LinearBicycleModel.h │ ├── LinearBicycleModelNew.h │ └── Vehicle.h │ └── src │ ├── LinearBicycleModel.cpp │ ├── LinearBicycleModelNew.cpp │ └── Vehicle.cpp ├── libdata ├── CMakeLists.txt ├── include │ ├── GeneratedHeaders_Data.h │ └── generated │ │ └── msv │ │ ├── SensorBoardData.h │ │ ├── SteeringData.h │ │ └── UserButtonData.h ├── src │ └── generated │ │ └── msv │ │ ├── SensorBoardData.cpp │ │ ├── SteeringData.cpp │ │ └── UserButtonData.cpp └── testsuites │ ├── msv_SensorBoardDataTestSuite.h │ ├── msv_SteeringDataTestSuite.h │ └── msv_UserButtonDataTestSuite.h ├── libopendavinci ├── CMakeLists.txt ├── include │ ├── context │ │ └── base │ │ │ ├── BlockableContainerListener.h │ │ │ ├── BlockableContainerReceiver.h │ │ │ ├── Clock.h │ │ │ ├── CommandLineInterface.h │ │ │ ├── ConferenceClientModuleRunner.h │ │ │ ├── ContainerDeliverer.h │ │ │ ├── ControlledContainerConference.h │ │ │ ├── ControlledContainerConferenceFactory.h │ │ │ ├── ControlledContainerConferenceForSystemUnderTest.h │ │ │ ├── ControlledTime.h │ │ │ ├── ControlledTimeFactory.h │ │ │ ├── DirectInterface.h │ │ │ ├── PlaybackContainer.h │ │ │ ├── RecordingContainer.h │ │ │ ├── RunModuleBreakpoint.h │ │ │ ├── Runner.h │ │ │ ├── RuntimeControl.h │ │ │ ├── RuntimeControlInterface.h │ │ │ ├── RuntimeEnvironment.h │ │ │ ├── SendContainerToSystemsUnderTest.h │ │ │ ├── StandaloneRuntimeControl.h │ │ │ ├── SuperComponent.h │ │ │ ├── SystemContextComponent.h │ │ │ ├── SystemFeedbackComponent.h │ │ │ ├── SystemReportingComponent.h │ │ │ └── TimeConstants.h │ ├── core │ │ ├── SharedPointer.h │ │ ├── StringToolbox.h │ │ ├── base │ │ │ ├── AbstractCIDModule.h │ │ │ ├── AbstractDataStore.h │ │ │ ├── AbstractModule.h │ │ │ ├── Breakpoint.h │ │ │ ├── BufferedFIFOQueue.h │ │ │ ├── BufferedLIFOQueue.h │ │ │ ├── ClientModule.h │ │ │ ├── CommandLineArgument.h │ │ │ ├── CommandLineParser.h │ │ │ ├── Condition.h │ │ │ ├── ConferenceClientModule.h │ │ │ ├── DataStoreManager.h │ │ │ ├── Deserializer.h │ │ │ ├── FIFOQueue.h │ │ │ ├── Hash.h │ │ │ ├── InterruptibleModule.h │ │ │ ├── KeyValueConfiguration.h │ │ │ ├── KeyValueDataStore.h │ │ │ ├── LIFOQueue.h │ │ │ ├── Lock.h │ │ │ ├── ManagedClientModule.h │ │ │ ├── ManagedClientModuleContainerConference.h │ │ │ ├── MasterModule.h │ │ │ ├── ModuleState.h │ │ │ ├── Mutex.h │ │ │ ├── Periodic.h │ │ │ ├── QueryableNetstringsDeserializer.h │ │ │ ├── QueryableNetstringsSerializer.h │ │ │ ├── RealtimeService.h │ │ │ ├── Serializable.h │ │ │ ├── SerializationFactory.h │ │ │ ├── Serializer.h │ │ │ ├── Service.h │ │ │ ├── Thread.h │ │ │ └── TreeNode.h │ │ ├── data │ │ │ ├── Configuration.h │ │ │ ├── Constants.h │ │ │ ├── Container.h │ │ │ ├── RuntimeStatistic.h │ │ │ ├── SerializableData.h │ │ │ ├── SharedData.h │ │ │ ├── TimeStamp.h │ │ │ ├── control │ │ │ │ ├── ForceControl.h │ │ │ │ └── VehicleControl.h │ │ │ ├── dmcp │ │ │ │ ├── DiscoverMessage.h │ │ │ │ ├── ModuleDescriptor.h │ │ │ │ ├── ModuleDescriptorComparator.h │ │ │ │ ├── ModuleExitCodeMessage.h │ │ │ │ ├── ModuleStateMessage.h │ │ │ │ ├── ModuleStatistics.h │ │ │ │ ├── PulseAckContainersMessage.h │ │ │ │ ├── PulseAckMessage.h │ │ │ │ └── PulseMessage.h │ │ │ ├── environment │ │ │ │ ├── Matrix3x3.h │ │ │ │ ├── Point3.h │ │ │ │ ├── Position.h │ │ │ │ └── VehicleData.h │ │ │ ├── image │ │ │ │ └── SharedImage.h │ │ │ ├── player │ │ │ │ └── PlayerCommand.h │ │ │ └── recorder │ │ │ │ └── RecorderCommand.h │ │ ├── dmcp │ │ │ ├── Config.h │ │ │ ├── ModuleConfigurationProvider.h │ │ │ ├── ModuleStateListener.h │ │ │ ├── ServerInformation.h │ │ │ ├── SuperComponentStateListener.h │ │ │ ├── connection │ │ │ │ ├── Client.h │ │ │ │ ├── ConnectionHandler.h │ │ │ │ ├── ModuleConnection.h │ │ │ │ └── Server.h │ │ │ └── discoverer │ │ │ │ ├── Client.h │ │ │ │ └── Server.h │ │ ├── exceptions │ │ │ └── Exceptions.h │ │ ├── io │ │ │ ├── Connection.h │ │ │ ├── ConnectionAcceptor.h │ │ │ ├── ConnectionAcceptorListener.h │ │ │ ├── ConnectionErrorListener.h │ │ │ ├── ContainerConference.h │ │ │ ├── ContainerConferenceFactory.h │ │ │ ├── ContainerListener.h │ │ │ ├── ContainerObserver.h │ │ │ ├── Protocol.h │ │ │ ├── StreamFactory.h │ │ │ ├── UDPMultiCastContainerConference.h │ │ │ └── URL.h │ │ ├── macros.h │ │ ├── native.h │ │ ├── platform.h │ │ ├── platform │ │ │ └── win │ │ │ │ └── inttypes.h │ │ └── wrapper │ │ │ ├── AbstractProtocol.h │ │ │ ├── BerkeleyDB │ │ │ ├── BerkeleyDBKeyValueDatabase.h │ │ │ ├── BerkeleyDBKeyValueDatabaseFactoryWorker.h │ │ │ ├── BerkeleyDBKeyValueDatabaseFile.h │ │ │ └── BerkeleyDBKeyValueDatabaseInMemory.h │ │ │ ├── CompressionFactory.h │ │ │ ├── CompressionFactoryWorker.h │ │ │ ├── CompressionLibraryProducts.h │ │ │ ├── ConcurrencyFactory.h │ │ │ ├── ConcurrencyFactoryWorker.h │ │ │ ├── Condition.h │ │ │ ├── ConditionFactory.h │ │ │ ├── ConditionFactoryWorker.h │ │ │ ├── ConfigurationTraits.h │ │ │ ├── ConnectionListener.h │ │ │ ├── ConnectionObserver.h │ │ │ ├── DecompressedData.h │ │ │ ├── Disposable.h │ │ │ ├── DisposalService.h │ │ │ ├── KeyValueDatabase.h │ │ │ ├── KeyValueDatabaseFactory.h │ │ │ ├── KeyValueDatabaseFactoryWorker.h │ │ │ ├── KeyValueDatabaseLibraryProducts.h │ │ │ ├── Libraries.h │ │ │ ├── Mutex.h │ │ │ ├── MutexFactory.h │ │ │ ├── MutexFactoryWorker.h │ │ │ ├── NetstringsProtocol.h │ │ │ ├── NetworkLibraryProducts.h │ │ │ ├── POSIX │ │ │ ├── POSIXConcurrencyFactoryWorker.h │ │ │ ├── POSIXCondition.h │ │ │ ├── POSIXConditionFactoryWorker.h │ │ │ ├── POSIXMutex.h │ │ │ ├── POSIXMutexFactoryWorker.h │ │ │ ├── POSIXSerialPort.h │ │ │ ├── POSIXSerialPortFactoryWorker.h │ │ │ ├── POSIXSharedMemory.h │ │ │ ├── POSIXSharedMemoryFactoryWorker.h │ │ │ ├── POSIXTCPAcceptor.h │ │ │ ├── POSIXTCPConnection.h │ │ │ ├── POSIXTCPFactoryWorker.h │ │ │ ├── POSIXThread.h │ │ │ ├── POSIXTime.h │ │ │ ├── POSIXTimeFactoryWorker.h │ │ │ ├── POSIXUDPFactoryWorker.h │ │ │ ├── POSIXUDPReceiver.h │ │ │ └── POSIXUDPSender.h │ │ │ ├── Packet.h │ │ │ ├── PacketListener.h │ │ │ ├── PacketObserver.h │ │ │ ├── PartialStringReceiver.h │ │ │ ├── RealtimeRunnable.h │ │ │ ├── Runnable.h │ │ │ ├── SerialPort.h │ │ │ ├── SerialPortFactory.h │ │ │ ├── SerialPortFactoryWorker.h │ │ │ ├── SerialPortLibraryProducts.h │ │ │ ├── SharedMemory.h │ │ │ ├── SharedMemoryFactory.h │ │ │ ├── SharedMemoryFactoryWorker.h │ │ │ ├── SimpleDB │ │ │ ├── SimpleDB.h │ │ │ └── SimpleDBFactoryWorker.h │ │ │ ├── StaticInstanceFactory.h │ │ │ ├── StringComparator.h │ │ │ ├── StringListener.h │ │ │ ├── StringObserver.h │ │ │ ├── StringPipeline.h │ │ │ ├── StringProtocol.h │ │ │ ├── StringSender.h │ │ │ ├── SystemLibraryProducts.h │ │ │ ├── TCPAcceptor.h │ │ │ ├── TCPAcceptorListener.h │ │ │ ├── TCPConnection.h │ │ │ ├── TCPFactory.h │ │ │ ├── TCPFactoryWorker.h │ │ │ ├── Thread.h │ │ │ ├── Time.h │ │ │ ├── TimeFactory.h │ │ │ ├── TimeFactoryWorker.h │ │ │ ├── UDPFactory.h │ │ │ ├── UDPFactoryWorker.h │ │ │ ├── UDPReceiver.h │ │ │ ├── UDPSender.h │ │ │ ├── WIN32 │ │ │ ├── WIN32ConcurrencyFactoryWorker.h │ │ │ ├── WIN32Condition.h │ │ │ ├── WIN32ConditionFactoryWorker.h │ │ │ ├── WIN32Mutex.h │ │ │ ├── WIN32MutexFactoryWorker.h │ │ │ ├── WIN32SerialPort.h │ │ │ ├── WIN32SerialPortFactoryWorker.h │ │ │ ├── WIN32SharedMemory.h │ │ │ ├── WIN32SharedMemoryFactoryWorker.h │ │ │ ├── WIN32TCPAcceptor.h │ │ │ ├── WIN32TCPConnection.h │ │ │ ├── WIN32TCPFactoryWorker.h │ │ │ ├── WIN32Thread.h │ │ │ ├── WIN32Time.h │ │ │ ├── WIN32TimeFactoryWorker.h │ │ │ ├── WIN32UDPFactoryWorker.h │ │ │ ├── WIN32UDPReceiver.h │ │ │ └── WIN32UDPSender.h │ │ │ └── Zip │ │ │ ├── ZipCompressionFactoryWorker.h │ │ │ └── ZipDecompressedData.h │ └── tools │ │ ├── MemorySegment.h │ │ ├── player │ │ ├── Player.h │ │ └── PlayerCache.h │ │ ├── recorder │ │ ├── Recorder.h │ │ ├── SharedDataListener.h │ │ └── SharedDataWriter.h │ │ └── splitter │ │ └── Splitter.h ├── src │ ├── context │ │ └── base │ │ │ ├── BlockableContainerListener.cpp │ │ │ ├── BlockableContainerReceiver.cpp │ │ │ ├── Clock.cpp │ │ │ ├── CommandLineInterface.cpp │ │ │ ├── ConferenceClientModuleRunner.cpp │ │ │ ├── ContainerDeliverer.cpp │ │ │ ├── ControlledContainerConference.cpp │ │ │ ├── ControlledContainerConferenceFactory.cpp │ │ │ ├── ControlledContainerConferenceForSystemUnderTest.cpp │ │ │ ├── ControlledTime.cpp │ │ │ ├── ControlledTimeFactory.cpp │ │ │ ├── DirectInterface.cpp │ │ │ ├── PlaybackContainer.cpp │ │ │ ├── RecordingContainer.cpp │ │ │ ├── RunModuleBreakpoint.cpp │ │ │ ├── Runner.cpp │ │ │ ├── RuntimeControl.cpp │ │ │ ├── RuntimeControltInterface.cpp │ │ │ ├── RuntimeEnvironment.cpp │ │ │ ├── SendContainerToSystemsUnderTest.cpp │ │ │ ├── StandaloneRuntimeControl.cpp │ │ │ ├── SuperComponent.cpp │ │ │ ├── SystemContextComponent.cpp │ │ │ ├── SystemFeedbackComponent.cpp │ │ │ └── SystemReportingComponent.cpp │ ├── core │ │ ├── base │ │ │ ├── AbstractCIDModule.cpp │ │ │ ├── AbstractDataStore.cpp │ │ │ ├── AbstractModule.cpp │ │ │ ├── Breakpoint.cpp │ │ │ ├── BufferedFIFOQueue.cpp │ │ │ ├── BufferedLIFOQueue.cpp │ │ │ ├── ClientModule.cpp │ │ │ ├── CommandLineArgument.cpp │ │ │ ├── CommandLineParser.cpp │ │ │ ├── Condition.cpp │ │ │ ├── ConferenceClientModule.cpp │ │ │ ├── DataStoreManager.cpp │ │ │ ├── Deserializer.cpp │ │ │ ├── FIFOQueue.cpp │ │ │ ├── InterruptibleModule.cpp │ │ │ ├── KeyValueConfiguration.cpp │ │ │ ├── KeyValueDataStore.cpp │ │ │ ├── LIFOQueue.cpp │ │ │ ├── Lock.cpp │ │ │ ├── ManagedClientModule.cpp │ │ │ ├── ManagedClientModuleContainerConference.cpp │ │ │ ├── MasterModule.cpp │ │ │ ├── ModuleState.cpp │ │ │ ├── Mutex.cpp │ │ │ ├── Periodic.cpp │ │ │ ├── QueryableNetstringsDeserializer.cpp │ │ │ ├── QueryableNetstringsSerializer.cpp │ │ │ ├── RealtimeService.cpp │ │ │ ├── Serializable.cpp │ │ │ ├── SerializationFactory.cpp │ │ │ ├── Serializer.cpp │ │ │ ├── Service.cpp │ │ │ └── Thread.cpp │ │ ├── data │ │ │ ├── Configuration.cpp │ │ │ ├── Constants.cpp │ │ │ ├── Container.cpp │ │ │ ├── RuntimeStatistic.cpp │ │ │ ├── SerializableData.cpp │ │ │ ├── SharedData.cpp │ │ │ ├── TimeStamp.cpp │ │ │ ├── control │ │ │ │ ├── ForceControl.cpp │ │ │ │ └── VehicleControl.cpp │ │ │ ├── dmcp │ │ │ │ ├── DiscoverMessage.cpp │ │ │ │ ├── ModuleDescriptor.cpp │ │ │ │ ├── ModuleDescriptorComparator.cpp │ │ │ │ ├── ModuleExitCodeMessage.cpp │ │ │ │ ├── ModuleStateMessage.cpp │ │ │ │ ├── ModuleStatistics.cpp │ │ │ │ ├── PulseAckContainersMessage.cpp │ │ │ │ ├── PulseAckMessage.cpp │ │ │ │ └── PulseMessage.cpp │ │ │ ├── environment │ │ │ │ ├── Matrix3x3.cpp │ │ │ │ ├── Point3.cpp │ │ │ │ ├── Position.cpp │ │ │ │ └── VehicleData.cpp │ │ │ ├── image │ │ │ │ └── SharedImage.cpp │ │ │ ├── player │ │ │ │ └── PlayerCommand.cpp │ │ │ └── recorder │ │ │ │ └── RecorderCommand.cpp │ │ ├── dmcp │ │ │ ├── ServerInformation.cpp │ │ │ ├── connection │ │ │ │ ├── Client.cpp │ │ │ │ ├── ModuleConnection.cpp │ │ │ │ └── Server.cpp │ │ │ └── discoverer │ │ │ │ ├── Client.cpp │ │ │ │ └── Server.cpp │ │ ├── exceptions │ │ │ └── Exceptions.cpp │ │ ├── io │ │ │ ├── Connection.cpp │ │ │ ├── ConnectionAcceptor.cpp │ │ │ ├── ContainerConference.cpp │ │ │ ├── ContainerConferenceFactory.cpp │ │ │ ├── ContainerListener.cpp │ │ │ ├── ContainerObserver.cpp │ │ │ ├── Protocol.cpp │ │ │ ├── StreamFactory.cpp │ │ │ ├── UDPMultiCastContainerConference.cpp │ │ │ └── URL.cpp │ │ └── wrapper │ │ │ ├── AbstractProtocol.cpp │ │ │ ├── BerkeleyDB │ │ │ ├── BerkeleyDBKeyValueDatabase.cpp │ │ │ ├── BerkeleyDBKeyValueDatabaseFactoryWorker.cpp │ │ │ ├── BerkeleyDBKeyValueDatabaseFile.cpp │ │ │ └── BerkeleyDBKeyValueDatabaseInMemory.cpp │ │ │ ├── CompressionFactory.cpp │ │ │ ├── ConcurrencyFactory.cpp │ │ │ ├── Condition.cpp │ │ │ ├── ConditionFactory.cpp │ │ │ ├── ConnectionListener.cpp │ │ │ ├── ConnectionObserver.cpp │ │ │ ├── DecompressedData.cpp │ │ │ ├── Disposable.cpp │ │ │ ├── DisposalService.cpp │ │ │ ├── KeyValueDatabase.cpp │ │ │ ├── KeyValueDatabaseFactory.cpp │ │ │ ├── Mutex.cpp │ │ │ ├── MutexFactory.cpp │ │ │ ├── NetstringsProtocol.cpp │ │ │ ├── POSIX │ │ │ ├── POSIXCondition.cpp │ │ │ ├── POSIXMutex.cpp │ │ │ ├── POSIXSerialPort.cpp │ │ │ ├── POSIXSharedMemory.cpp │ │ │ ├── POSIXTCPAcceptor.cpp │ │ │ ├── POSIXTCPConnection.cpp │ │ │ ├── POSIXThread.cpp │ │ │ ├── POSIXTime.cpp │ │ │ ├── POSIXUDPReceiver.cpp │ │ │ └── POSIXUDPSender.cpp │ │ │ ├── Packet.cpp │ │ │ ├── PacketListener.cpp │ │ │ ├── PacketObserver.cpp │ │ │ ├── PartialStringReceiver.cpp │ │ │ ├── RealtimeRunnable.cpp │ │ │ ├── Runnable.cpp │ │ │ ├── SerialPort.cpp │ │ │ ├── SerialPortFactory.cpp │ │ │ ├── SharedMemory.cpp │ │ │ ├── SharedMemoryFactory.cpp │ │ │ ├── SimpleDB │ │ │ └── SimpleDB.cpp │ │ │ ├── StringComparator.cpp │ │ │ ├── StringListener.cpp │ │ │ ├── StringObserver.cpp │ │ │ ├── StringPipeline.cpp │ │ │ ├── StringProtocol.cpp │ │ │ ├── StringSender.cpp │ │ │ ├── TCPConnection.cpp │ │ │ ├── TCPFactory.cpp │ │ │ ├── Thread.cpp │ │ │ ├── Time.cpp │ │ │ ├── TimeFactory.cpp │ │ │ ├── UDPFactory.cpp │ │ │ ├── UDPReceiver.cpp │ │ │ ├── UDPSender.cpp │ │ │ ├── WIN32 │ │ │ ├── WIN32Condition.cpp │ │ │ ├── WIN32Mutex.cpp │ │ │ ├── WIN32SerialPort.cpp │ │ │ ├── WIN32SharedMemory.cpp │ │ │ ├── WIN32TCPAcceptor.cpp │ │ │ ├── WIN32TCPConnection.cpp │ │ │ ├── WIN32Thread.cpp │ │ │ ├── WIN32Time.cpp │ │ │ ├── WIN32UDPReceiver.cpp │ │ │ └── WIN32UDPSender.cpp │ │ │ └── Zip │ │ │ └── ZipDecompressedData.cpp │ └── tools │ │ ├── MemorySegment.cpp │ │ ├── player │ │ ├── Player.cpp │ │ └── PlayerCache.cpp │ │ ├── recorder │ │ ├── Recorder.cpp │ │ ├── SharedDataListener.cpp │ │ └── SharedDataWriter.cpp │ │ └── splitter │ │ └── Splitter.cpp └── testsuites │ ├── AbstractCIDModuleTestSuite.h │ ├── ClockTestSuite.h │ ├── CommandLineParserTestSuite.h │ ├── ConditionTestSuite.h │ ├── ConferenceClientModuleTestSuite.h │ ├── ConferenceFactoryTestSuite.h │ ├── ConnectionTestSuite.h │ ├── ContainerTestSuite.h │ ├── ControlFlowTestSuite.h │ ├── DMCPConnectionTestSuite.h │ ├── DMCPDiscovererTestSuite.h │ ├── DataStoreTestSuite.h │ ├── DisposalTestSuite.h │ ├── FalseSerializationTestSuite.h │ ├── KeyValueConfigurationTestSuite.h │ ├── MutexTestSuite.h │ ├── NetstringsProtocolTestSuite.h │ ├── PulseAckContainersMessageTestSuite.h │ ├── QueueTestSuite.h │ ├── RunnerTestSuite.h │ ├── RuntimeControlContainerMultipleAppsTestSuite.h │ ├── RuntimeControlContainerTestSuite.h │ ├── RuntimeControlTestSuite.h │ ├── SerializationTestSuite.h │ ├── ServiceTestSuite.h │ ├── SharedMemoryTestSuite.h │ ├── SharedPointerTestSuite.h │ ├── StringProtocolTestSuite.h │ ├── StringToolboxTestSuite.h │ ├── TCPTestSuite.h │ ├── TimeFactoryTestSuite.h │ ├── TimeStampTestSuite.h │ ├── TreeNodeTestSuite.h │ ├── UDPTestSuite.h │ ├── ZipTestSuite.h │ └── mocks │ ├── ConnectionAcceptorListenerMock.h │ ├── ConnectionErrorListenerMock.h │ ├── ConnectionHandlerMock.h │ ├── ConnectionListenerMock.h │ ├── ContainerListenerMock.h │ ├── FunctionCallWaiter.h │ ├── ModuleConfigurationProviderMock.h │ ├── ModuleStateListenerMock.h │ ├── ParameterValueList.h │ ├── StringListenerMock.h │ └── TCPAcceptorListenerMock.h ├── libvehiclecontext ├── CMakeLists.txt ├── include │ └── vehiclecontext │ │ ├── VehicleRuntimeControl.h │ │ ├── model │ │ ├── IRUS.h │ │ ├── PointSensor.h │ │ └── SimplifiedBicycleModel.h │ │ └── report │ │ └── DistanceToObjectsReport.h └── src │ ├── VehicleRuntimeControl.cpp │ ├── model │ ├── IRUS.cpp │ ├── PointSensor.cpp │ └── SimplifiedBicycleModel.cpp │ └── report │ └── DistanceToObjectsReport.cpp ├── pull_Autodrive.sh ├── push_Autodrive.sh ├── push_Autodrive_forced.sh ├── recorder.sh ├── recordings ├── parking-easy-group-10.rec ├── parking-hard-group-10.rec └── parking-medium-group-10.rec ├── supercomponent ├── CMakeLists.txt ├── apps │ └── supercomponent.cpp ├── configuration ├── include │ ├── ConnectedModule.h │ ├── ConnectedModules.h │ ├── GlobalConfigurationProvider.h │ └── SuperComponent.h ├── src │ ├── ConnectedModule.cpp │ ├── ConnectedModules.cpp │ ├── GlobalConfigurationProvider.cpp │ └── SuperComponent.cpp └── testsuites │ ├── ManagedLevelTestSuite.h │ └── SupercomponentClientModuleTestSuite.h └── tools ├── CMakeLists.txt ├── player ├── CMakeLists.txt ├── apps │ └── player.cpp ├── include │ └── PlayerModule.h ├── src │ └── PlayerModule.cpp └── testsuites │ └── PlayerTestSuite.h ├── recintegrity ├── CMakeLists.txt ├── apps │ └── recintegrity.cpp ├── include │ └── RecIntegrity.h ├── src │ └── RecIntegrity.cpp └── testsuites │ └── RecIntegrityTestSuite.h ├── recorder ├── CMakeLists.txt ├── apps │ └── recorder.cpp ├── include │ └── RecorderModule.h ├── src │ └── RecorderModule.cpp └── testsuites │ └── RecorderTestSuite.h ├── split ├── CMakeLists.txt ├── apps │ └── split.cpp ├── include │ └── Split.h ├── src │ └── Split.cpp └── testsuites │ └── SplitTestSuite.h └── spy ├── CMakeLists.txt ├── apps └── spy.cpp ├── include └── Spy.h ├── src └── Spy.cpp └── testsuites └── SpyTestSuite.h /.gitignore: -------------------------------------------------------------------------------- 1 | ## Vim 2 | *.swp 3 | *.swo 4 | *~ 5 | 6 | #CLION 7 | .idea/ 8 | 9 | #GIT REBASE FILES 10 | *.orig 11 | 12 | ### CMake ### 13 | CMakeCache.txt 14 | CMakeFiles 15 | Makefile 16 | cmake_install.cmake 17 | install_manifest.txt 18 | 19 | #ignore build folder 20 | build/* 21 | !build/placeholder 22 | 23 | ### C++ ### 24 | # Compiled Object files 25 | *.slo 26 | *.lo 27 | *.o 28 | *.obj 29 | 30 | # Precompiled Headers 31 | *.gch 32 | *.pch 33 | 34 | # Compiled Dynamic libraries 35 | *.so 36 | *.dylib 37 | *.dll 38 | 39 | # Fortran module files 40 | *.mod 41 | 42 | # Compiled Static libraries 43 | *.lai 44 | *.la 45 | *.a 46 | *.lib 47 | 48 | # Executables 49 | *.exe 50 | *.out 51 | *.app 52 | -------------------------------------------------------------------------------- /3rdParty/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | # Add subdirectories. 8 | ADD_SUBDIRECTORY (zlib-1.2.3) 9 | ADD_SUBDIRECTORY (libzip-0.9) 10 | ADD_SUBDIRECTORY (libdb-4.6.21) 11 | -------------------------------------------------------------------------------- /3rdParty/SRCS/cxxtest-3.10.1.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/3rdParty/SRCS/cxxtest-3.10.1.zip -------------------------------------------------------------------------------- /3rdParty/SRCS/db-4.6.21.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/3rdParty/SRCS/db-4.6.21.tar.gz -------------------------------------------------------------------------------- /3rdParty/SRCS/libzip-0.9.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/3rdParty/SRCS/libzip-0.9.tar.gz -------------------------------------------------------------------------------- /3rdParty/SRCS/zlib-1.2.3.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/3rdParty/SRCS/zlib-1.2.3.tar.gz -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/README: -------------------------------------------------------------------------------- 1 | Berkeley DB 4.6.21: (September 27, 2007) 2 | 3 | This is version 4.6.21 of Berkeley DB from Oracle. To view release and 4 | installation documentation, load the distribution file docs/index.html 5 | into your web browser. 6 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-POSIX/dbinc/db_join.h: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1998,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: db_join.h,v 12.7 2007/05/17 15:15:05 bostic Exp $ 7 | */ 8 | 9 | #ifndef _DB_JOIN_H_ 10 | #define _DB_JOIN_H_ 11 | 12 | #if defined(__cplusplus) 13 | extern "C" { 14 | #endif 15 | 16 | /* 17 | * Joins use a join cursor that is similar to a regular DB cursor except 18 | * that it only supports c_get and c_close functionality. Also, it does 19 | * not support the full range of flags for get. 20 | */ 21 | typedef struct __join_cursor { 22 | u_int8_t *j_exhausted; /* Array of flags; is cursor i exhausted? */ 23 | DBC **j_curslist; /* Array of cursors in the join: constant. */ 24 | DBC **j_fdupcurs; /* Cursors w/ first instances of current dup. */ 25 | DBC **j_workcurs; /* Scratch cursor copies to muck with. */ 26 | DB *j_primary; /* Primary dbp. */ 27 | DBT j_key; /* Used to do lookups. */ 28 | DBT j_rdata; /* Memory used for data return. */ 29 | u_int32_t j_ncurs; /* How many cursors do we have? */ 30 | #define JOIN_RETRY 0x01 /* Error on primary get; re-return same key. */ 31 | u_int32_t flags; 32 | } JOIN_CURSOR; 33 | 34 | #if defined(__cplusplus) 35 | } 36 | #endif 37 | #endif /* !_DB_JOIN_H_ */ 38 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-POSIX/dbinc/fop.h: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 2001,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: fop.h,v 12.8 2007/05/17 15:15:05 bostic Exp $ 7 | */ 8 | 9 | #ifndef _DB_FOP_H_ 10 | #define _DB_FOP_H_ 11 | 12 | #if defined(__cplusplus) 13 | extern "C" { 14 | #endif 15 | 16 | #define MAKE_INMEM(D) do { \ 17 | F_SET((D), DB_AM_INMEM); \ 18 | (void)__memp_set_flags((D)->mpf, DB_MPOOL_NOFILE, 1); \ 19 | } while (0) 20 | 21 | #include "dbinc_auto/fileops_auto.h" 22 | #include "dbinc_auto/fileops_ext.h" 23 | 24 | #if defined(__cplusplus) 25 | } 26 | #endif 27 | #endif /* !_DB_FOP_H_ */ 28 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-POSIX/dbinc/hmac.h: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1996,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: hmac.h,v 12.6 2007/05/17 15:15:05 bostic Exp $ 7 | */ 8 | 9 | #ifndef _DB_HMAC_H_ 10 | #define _DB_HMAC_H_ 11 | 12 | #if defined(__cplusplus) 13 | extern "C" { 14 | #endif 15 | 16 | /* 17 | * Algorithm specific information. 18 | */ 19 | /* 20 | * SHA1 checksumming 21 | */ 22 | typedef struct { 23 | u_int32_t state[5]; 24 | u_int32_t count[2]; 25 | unsigned char buffer[64]; 26 | } SHA1_CTX; 27 | 28 | /* 29 | * AES assumes the SHA1 checksumming (also called MAC) 30 | */ 31 | #define DB_MAC_MAGIC "mac derivation key magic value" 32 | #define DB_ENC_MAGIC "encryption and decryption key value magic" 33 | 34 | #if defined(__cplusplus) 35 | } 36 | #endif 37 | 38 | #include "dbinc_auto/hmac_ext.h" 39 | #endif /* !_DB_HMAC_H_ */ 40 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-POSIX/dbinc_auto/crdel_auto.h: -------------------------------------------------------------------------------- 1 | /* Do not edit: automatically built by gen_rec.awk. */ 2 | 3 | #ifndef __crdel_AUTO_H 4 | #define __crdel_AUTO_H 5 | #define DB___crdel_metasub 142 6 | typedef struct ___crdel_metasub_args { 7 | u_int32_t type; 8 | DB_TXN *txnp; 9 | DB_LSN prev_lsn; 10 | int32_t fileid; 11 | db_pgno_t pgno; 12 | DBT page; 13 | DB_LSN lsn; 14 | } __crdel_metasub_args; 15 | 16 | #define DB___crdel_inmem_create 138 17 | typedef struct ___crdel_inmem_create_args { 18 | u_int32_t type; 19 | DB_TXN *txnp; 20 | DB_LSN prev_lsn; 21 | int32_t fileid; 22 | DBT name; 23 | DBT fid; 24 | u_int32_t pgsize; 25 | } __crdel_inmem_create_args; 26 | 27 | #define DB___crdel_inmem_rename 139 28 | typedef struct ___crdel_inmem_rename_args { 29 | u_int32_t type; 30 | DB_TXN *txnp; 31 | DB_LSN prev_lsn; 32 | DBT oldname; 33 | DBT newname; 34 | DBT fid; 35 | } __crdel_inmem_rename_args; 36 | 37 | #define DB___crdel_inmem_remove 140 38 | typedef struct ___crdel_inmem_remove_args { 39 | u_int32_t type; 40 | DB_TXN *txnp; 41 | DB_LSN prev_lsn; 42 | DBT name; 43 | DBT fid; 44 | } __crdel_inmem_remove_args; 45 | 46 | #endif 47 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-POSIX/dbinc_auto/dbreg_auto.h: -------------------------------------------------------------------------------- 1 | /* Do not edit: automatically built by gen_rec.awk. */ 2 | 3 | #ifndef __dbreg_AUTO_H 4 | #define __dbreg_AUTO_H 5 | #define DB___dbreg_register 2 6 | typedef struct ___dbreg_register_args { 7 | u_int32_t type; 8 | DB_TXN *txnp; 9 | DB_LSN prev_lsn; 10 | u_int32_t opcode; 11 | DBT name; 12 | DBT uid; 13 | int32_t fileid; 14 | DBTYPE ftype; 15 | db_pgno_t meta_pgno; 16 | u_int32_t id; 17 | } __dbreg_register_args; 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-POSIX/dbinc_auto/fileops_auto.h: -------------------------------------------------------------------------------- 1 | /* Do not edit: automatically built by gen_rec.awk. */ 2 | 3 | #ifndef __fop_AUTO_H 4 | #define __fop_AUTO_H 5 | #define DB___fop_create 143 6 | typedef struct ___fop_create_args { 7 | u_int32_t type; 8 | DB_TXN *txnp; 9 | DB_LSN prev_lsn; 10 | DBT name; 11 | u_int32_t appname; 12 | u_int32_t mode; 13 | } __fop_create_args; 14 | 15 | #define DB___fop_remove 144 16 | typedef struct ___fop_remove_args { 17 | u_int32_t type; 18 | DB_TXN *txnp; 19 | DB_LSN prev_lsn; 20 | DBT name; 21 | DBT fid; 22 | u_int32_t appname; 23 | } __fop_remove_args; 24 | 25 | #define DB___fop_write 145 26 | typedef struct ___fop_write_args { 27 | u_int32_t type; 28 | DB_TXN *txnp; 29 | DB_LSN prev_lsn; 30 | DBT name; 31 | u_int32_t appname; 32 | u_int32_t pgsize; 33 | db_pgno_t pageno; 34 | u_int32_t offset; 35 | DBT page; 36 | u_int32_t flag; 37 | } __fop_write_args; 38 | 39 | #define DB___fop_rename 146 40 | #define DB___fop_rename_noundo 150 41 | typedef struct ___fop_rename_args { 42 | u_int32_t type; 43 | DB_TXN *txnp; 44 | DB_LSN prev_lsn; 45 | DBT oldname; 46 | DBT newname; 47 | DBT fileid; 48 | u_int32_t appname; 49 | } __fop_rename_args; 50 | 51 | #define DB___fop_file_remove 141 52 | typedef struct ___fop_file_remove_args { 53 | u_int32_t type; 54 | DB_TXN *txnp; 55 | DB_LSN prev_lsn; 56 | DBT real_fid; 57 | DBT tmp_fid; 58 | DBT name; 59 | u_int32_t appname; 60 | u_int32_t child; 61 | } __fop_file_remove_args; 62 | 63 | #endif 64 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-POSIX/dbinc_auto/hmac_ext.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT: automatically built by dist/s_include. */ 2 | #ifndef _hmac_ext_h_ 3 | #define _hmac_ext_h_ 4 | 5 | #if defined(__cplusplus) 6 | extern "C" { 7 | #endif 8 | 9 | void __db_chksum __P((void *, u_int8_t *, size_t, u_int8_t *, u_int8_t *)); 10 | void __db_derive_mac __P((u_int8_t *, size_t, u_int8_t *)); 11 | int __db_check_chksum __P((DB_ENV *, void *, DB_CIPHER *, u_int8_t *, void *, size_t, int)); 12 | void __db_SHA1Transform __P((u_int32_t *, unsigned char *)); 13 | void __db_SHA1Init __P((SHA1_CTX *)); 14 | void __db_SHA1Update __P((SHA1_CTX *, unsigned char *, size_t)); 15 | void __db_SHA1Final __P((unsigned char *, SHA1_CTX *)); 16 | 17 | #if defined(__cplusplus) 18 | } 19 | #endif 20 | #endif /* !_hmac_ext_h_ */ 21 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-POSIX/dbinc_auto/rep_auto.h: -------------------------------------------------------------------------------- 1 | /* Do not edit: automatically built by gen_rec.awk. */ 2 | 3 | #ifndef __rep_AUTO_H 4 | #define __rep_AUTO_H 5 | typedef struct ___rep_update_args { 6 | DB_LSN first_lsn; 7 | u_int32_t first_vers; 8 | u_int32_t num_files; 9 | } __rep_update_args; 10 | 11 | typedef struct ___rep_fileinfo_args { 12 | u_int32_t pgsize; 13 | db_pgno_t pgno; 14 | db_pgno_t max_pgno; 15 | u_int32_t filenum; 16 | int32_t id; 17 | u_int32_t type; 18 | u_int32_t flags; 19 | DBT uid; 20 | DBT info; 21 | } __rep_fileinfo_args; 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-POSIX/dbinc_auto/sequence_ext.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT: automatically built by dist/s_include. */ 2 | #ifndef _sequence_ext_h_ 3 | #define _sequence_ext_h_ 4 | 5 | #if defined(__cplusplus) 6 | extern "C" { 7 | #endif 8 | 9 | int __seq_stat __P((DB_SEQUENCE *, DB_SEQUENCE_STAT **, u_int32_t)); 10 | int __seq_stat_print __P((DB_SEQUENCE *, u_int32_t)); 11 | const FN * __db_get_seq_flags_fn __P((void)); 12 | const FN * __db_get_seq_flags_fn __P((void)); 13 | 14 | #if defined(__cplusplus) 15 | } 16 | #endif 17 | #endif /* !_sequence_ext_h_ */ 18 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-POSIX/dbinc_auto/xa_ext.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT: automatically built by dist/s_include. */ 2 | #ifndef _xa_ext_h_ 3 | #define _xa_ext_h_ 4 | 5 | #if defined(__cplusplus) 6 | extern "C" { 7 | #endif 8 | 9 | int __xa_get_txn __P((DB_ENV *, DB_TXN **, int)); 10 | int __db_xa_create __P((DB *)); 11 | int __db_rmid_to_env __P((int rmid, DB_ENV **envp)); 12 | int __db_xid_to_txn __P((DB_ENV *, XID *, roff_t *)); 13 | int __db_map_rmid __P((int, DB_ENV *)); 14 | int __db_unmap_rmid __P((int)); 15 | int __db_map_xid __P((DB_ENV *, XID *, TXN_DETAIL *)); 16 | void __db_unmap_xid __P((DB_ENV *, XID *, size_t)); 17 | 18 | #if defined(__cplusplus) 19 | } 20 | #endif 21 | #endif /* !_xa_ext_h_ */ 22 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-WIN32/dbinc/db_join.h: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1998,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: db_join.h,v 12.7 2007/05/17 15:15:05 bostic Exp $ 7 | */ 8 | 9 | #ifndef _DB_JOIN_H_ 10 | #define _DB_JOIN_H_ 11 | 12 | #if defined(__cplusplus) 13 | extern "C" { 14 | #endif 15 | 16 | /* 17 | * Joins use a join cursor that is similar to a regular DB cursor except 18 | * that it only supports c_get and c_close functionality. Also, it does 19 | * not support the full range of flags for get. 20 | */ 21 | typedef struct __join_cursor { 22 | u_int8_t *j_exhausted; /* Array of flags; is cursor i exhausted? */ 23 | DBC **j_curslist; /* Array of cursors in the join: constant. */ 24 | DBC **j_fdupcurs; /* Cursors w/ first instances of current dup. */ 25 | DBC **j_workcurs; /* Scratch cursor copies to muck with. */ 26 | DB *j_primary; /* Primary dbp. */ 27 | DBT j_key; /* Used to do lookups. */ 28 | DBT j_rdata; /* Memory used for data return. */ 29 | u_int32_t j_ncurs; /* How many cursors do we have? */ 30 | #define JOIN_RETRY 0x01 /* Error on primary get; re-return same key. */ 31 | u_int32_t flags; 32 | } JOIN_CURSOR; 33 | 34 | #if defined(__cplusplus) 35 | } 36 | #endif 37 | #endif /* !_DB_JOIN_H_ */ 38 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-WIN32/dbinc/fop.h: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 2001,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: fop.h,v 12.8 2007/05/17 15:15:05 bostic Exp $ 7 | */ 8 | 9 | #ifndef _DB_FOP_H_ 10 | #define _DB_FOP_H_ 11 | 12 | #if defined(__cplusplus) 13 | extern "C" { 14 | #endif 15 | 16 | #define MAKE_INMEM(D) do { \ 17 | F_SET((D), DB_AM_INMEM); \ 18 | (void)__memp_set_flags((D)->mpf, DB_MPOOL_NOFILE, 1); \ 19 | } while (0) 20 | 21 | #include "dbinc_auto/fileops_auto.h" 22 | #include "dbinc_auto/fileops_ext.h" 23 | 24 | #if defined(__cplusplus) 25 | } 26 | #endif 27 | #endif /* !_DB_FOP_H_ */ 28 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-WIN32/dbinc/hmac.h: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1996,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: hmac.h,v 12.6 2007/05/17 15:15:05 bostic Exp $ 7 | */ 8 | 9 | #ifndef _DB_HMAC_H_ 10 | #define _DB_HMAC_H_ 11 | 12 | #if defined(__cplusplus) 13 | extern "C" { 14 | #endif 15 | 16 | /* 17 | * Algorithm specific information. 18 | */ 19 | /* 20 | * SHA1 checksumming 21 | */ 22 | typedef struct { 23 | u_int32_t state[5]; 24 | u_int32_t count[2]; 25 | unsigned char buffer[64]; 26 | } SHA1_CTX; 27 | 28 | /* 29 | * AES assumes the SHA1 checksumming (also called MAC) 30 | */ 31 | #define DB_MAC_MAGIC "mac derivation key magic value" 32 | #define DB_ENC_MAGIC "encryption and decryption key value magic" 33 | 34 | #if defined(__cplusplus) 35 | } 36 | #endif 37 | 38 | #include "dbinc_auto/hmac_ext.h" 39 | #endif /* !_DB_HMAC_H_ */ 40 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-WIN32/dbinc_auto/crdel_auto.h: -------------------------------------------------------------------------------- 1 | /* Do not edit: automatically built by gen_rec.awk. */ 2 | 3 | #ifndef __crdel_AUTO_H 4 | #define __crdel_AUTO_H 5 | #define DB___crdel_metasub 142 6 | typedef struct ___crdel_metasub_args { 7 | u_int32_t type; 8 | DB_TXN *txnp; 9 | DB_LSN prev_lsn; 10 | int32_t fileid; 11 | db_pgno_t pgno; 12 | DBT page; 13 | DB_LSN lsn; 14 | } __crdel_metasub_args; 15 | 16 | #define DB___crdel_inmem_create 138 17 | typedef struct ___crdel_inmem_create_args { 18 | u_int32_t type; 19 | DB_TXN *txnp; 20 | DB_LSN prev_lsn; 21 | int32_t fileid; 22 | DBT name; 23 | DBT fid; 24 | u_int32_t pgsize; 25 | } __crdel_inmem_create_args; 26 | 27 | #define DB___crdel_inmem_rename 139 28 | typedef struct ___crdel_inmem_rename_args { 29 | u_int32_t type; 30 | DB_TXN *txnp; 31 | DB_LSN prev_lsn; 32 | DBT oldname; 33 | DBT newname; 34 | DBT fid; 35 | } __crdel_inmem_rename_args; 36 | 37 | #define DB___crdel_inmem_remove 140 38 | typedef struct ___crdel_inmem_remove_args { 39 | u_int32_t type; 40 | DB_TXN *txnp; 41 | DB_LSN prev_lsn; 42 | DBT name; 43 | DBT fid; 44 | } __crdel_inmem_remove_args; 45 | 46 | #endif 47 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-WIN32/dbinc_auto/dbreg_auto.h: -------------------------------------------------------------------------------- 1 | /* Do not edit: automatically built by gen_rec.awk. */ 2 | 3 | #ifndef __dbreg_AUTO_H 4 | #define __dbreg_AUTO_H 5 | #define DB___dbreg_register 2 6 | typedef struct ___dbreg_register_args { 7 | u_int32_t type; 8 | DB_TXN *txnp; 9 | DB_LSN prev_lsn; 10 | u_int32_t opcode; 11 | DBT name; 12 | DBT uid; 13 | int32_t fileid; 14 | DBTYPE ftype; 15 | db_pgno_t meta_pgno; 16 | u_int32_t id; 17 | } __dbreg_register_args; 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-WIN32/dbinc_auto/ext_185_def.in: -------------------------------------------------------------------------------- 1 | 2 | /* DO NOT EDIT: automatically built by dist/s_include. */ 3 | #ifndef _DB_EXT_185_DEF_IN_ 4 | #define _DB_EXT_185_DEF_IN_ 5 | 6 | #ifdef _DB185_INT_H_ 7 | #define __db185_open __db185_open@DB_VERSION_UNIQUE_NAME@ 8 | #else 9 | #define __db185_open __db185_open@DB_VERSION_UNIQUE_NAME@ 10 | #endif 11 | 12 | #endif /* !_DB_EXT_185_DEF_IN_ */ 13 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-WIN32/dbinc_auto/ext_185_prot.in: -------------------------------------------------------------------------------- 1 | 2 | /* DO NOT EDIT: automatically built by dist/s_include. */ 3 | #ifndef _DB_EXT_185_PROT_IN_ 4 | #define _DB_EXT_185_PROT_IN_ 5 | 6 | #if defined(__cplusplus) 7 | extern "C" { 8 | #endif 9 | 10 | #ifdef _DB185_INT_H_ 11 | DB185 *__db185_open __P((const char *, int, int, DBTYPE, const void *)); 12 | #else 13 | DB *__db185_open __P((const char *, int, int, DBTYPE, const void *)); 14 | #endif 15 | 16 | #if defined(__cplusplus) 17 | } 18 | #endif 19 | #endif /* !_DB_EXT_185_PROT_IN_ */ 20 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-WIN32/dbinc_auto/fileops_auto.h: -------------------------------------------------------------------------------- 1 | /* Do not edit: automatically built by gen_rec.awk. */ 2 | 3 | #ifndef __fop_AUTO_H 4 | #define __fop_AUTO_H 5 | #define DB___fop_create 143 6 | typedef struct ___fop_create_args { 7 | u_int32_t type; 8 | DB_TXN *txnp; 9 | DB_LSN prev_lsn; 10 | DBT name; 11 | u_int32_t appname; 12 | u_int32_t mode; 13 | } __fop_create_args; 14 | 15 | #define DB___fop_remove 144 16 | typedef struct ___fop_remove_args { 17 | u_int32_t type; 18 | DB_TXN *txnp; 19 | DB_LSN prev_lsn; 20 | DBT name; 21 | DBT fid; 22 | u_int32_t appname; 23 | } __fop_remove_args; 24 | 25 | #define DB___fop_write 145 26 | typedef struct ___fop_write_args { 27 | u_int32_t type; 28 | DB_TXN *txnp; 29 | DB_LSN prev_lsn; 30 | DBT name; 31 | u_int32_t appname; 32 | u_int32_t pgsize; 33 | db_pgno_t pageno; 34 | u_int32_t offset; 35 | DBT page; 36 | u_int32_t flag; 37 | } __fop_write_args; 38 | 39 | #define DB___fop_rename 146 40 | #define DB___fop_rename_noundo 150 41 | typedef struct ___fop_rename_args { 42 | u_int32_t type; 43 | DB_TXN *txnp; 44 | DB_LSN prev_lsn; 45 | DBT oldname; 46 | DBT newname; 47 | DBT fileid; 48 | u_int32_t appname; 49 | } __fop_rename_args; 50 | 51 | #define DB___fop_file_remove 141 52 | typedef struct ___fop_file_remove_args { 53 | u_int32_t type; 54 | DB_TXN *txnp; 55 | DB_LSN prev_lsn; 56 | DBT real_fid; 57 | DBT tmp_fid; 58 | DBT name; 59 | u_int32_t appname; 60 | u_int32_t child; 61 | } __fop_file_remove_args; 62 | 63 | #endif 64 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-WIN32/dbinc_auto/hmac_ext.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT: automatically built by dist/s_include. */ 2 | #ifndef _hmac_ext_h_ 3 | #define _hmac_ext_h_ 4 | 5 | #if defined(__cplusplus) 6 | extern "C" { 7 | #endif 8 | 9 | void __db_chksum __P((void *, u_int8_t *, size_t, u_int8_t *, u_int8_t *)); 10 | void __db_derive_mac __P((u_int8_t *, size_t, u_int8_t *)); 11 | int __db_check_chksum __P((DB_ENV *, void *, DB_CIPHER *, u_int8_t *, void *, size_t, int)); 12 | void __db_SHA1Transform __P((u_int32_t *, unsigned char *)); 13 | void __db_SHA1Init __P((SHA1_CTX *)); 14 | void __db_SHA1Update __P((SHA1_CTX *, unsigned char *, size_t)); 15 | void __db_SHA1Final __P((unsigned char *, SHA1_CTX *)); 16 | 17 | #if defined(__cplusplus) 18 | } 19 | #endif 20 | #endif /* !_hmac_ext_h_ */ 21 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-WIN32/dbinc_auto/rep_auto.h: -------------------------------------------------------------------------------- 1 | /* Do not edit: automatically built by gen_rec.awk. */ 2 | 3 | #ifndef __rep_AUTO_H 4 | #define __rep_AUTO_H 5 | typedef struct ___rep_update_args { 6 | DB_LSN first_lsn; 7 | u_int32_t first_vers; 8 | u_int32_t num_files; 9 | } __rep_update_args; 10 | 11 | typedef struct ___rep_fileinfo_args { 12 | u_int32_t pgsize; 13 | db_pgno_t pgno; 14 | db_pgno_t max_pgno; 15 | u_int32_t filenum; 16 | int32_t id; 17 | u_int32_t type; 18 | u_int32_t flags; 19 | DBT uid; 20 | DBT info; 21 | } __rep_fileinfo_args; 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-WIN32/dbinc_auto/sequence_ext.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT: automatically built by dist/s_include. */ 2 | #ifndef _sequence_ext_h_ 3 | #define _sequence_ext_h_ 4 | 5 | #if defined(__cplusplus) 6 | extern "C" { 7 | #endif 8 | 9 | int __seq_stat __P((DB_SEQUENCE *, DB_SEQUENCE_STAT **, u_int32_t)); 10 | int __seq_stat_print __P((DB_SEQUENCE *, u_int32_t)); 11 | const FN * __db_get_seq_flags_fn __P((void)); 12 | const FN * __db_get_seq_flags_fn __P((void)); 13 | 14 | #if defined(__cplusplus) 15 | } 16 | #endif 17 | #endif /* !_sequence_ext_h_ */ 18 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/include-WIN32/dbinc_auto/xa_ext.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT: automatically built by dist/s_include. */ 2 | #ifndef _xa_ext_h_ 3 | #define _xa_ext_h_ 4 | 5 | #if defined(__cplusplus) 6 | extern "C" { 7 | #endif 8 | 9 | int __xa_get_txn __P((DB_ENV *, DB_TXN **, int)); 10 | int __db_xa_create __P((DB *)); 11 | int __db_rmid_to_env __P((int rmid, DB_ENV **envp)); 12 | int __db_xid_to_txn __P((DB_ENV *, XID *, roff_t *)); 13 | int __db_map_rmid __P((int, DB_ENV *)); 14 | int __db_unmap_rmid __P((int)); 15 | int __db_map_xid __P((DB_ENV *, XID *, TXN_DETAIL *)); 16 | void __db_unmap_xid __P((DB_ENV *, XID *, size_t)); 17 | 18 | #if defined(__cplusplus) 19 | } 20 | #endif 21 | #endif /* !_xa_ext_h_ */ 22 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/crypto_stub.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1996,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: crypto_stub.c,v 12.7 2007/05/17 15:14:55 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __crypto_region_init -- 15 | * Initialize crypto. 16 | * 17 | * 18 | * !!! 19 | * We don't put this stub file in the crypto/ directory of the distribution 20 | * because that entire directory is removed for non-crypto distributions. 21 | * 22 | * PUBLIC: int __crypto_region_init __P((DB_ENV *)); 23 | */ 24 | int 25 | __crypto_region_init(dbenv) 26 | DB_ENV *dbenv; 27 | { 28 | REGENV *renv; 29 | REGINFO *infop; 30 | int ret; 31 | 32 | infop = dbenv->reginfo; 33 | renv = infop->primary; 34 | MUTEX_LOCK(dbenv, renv->mtx_regenv); 35 | ret = !(renv->cipher_off == INVALID_ROFF); 36 | MUTEX_UNLOCK(dbenv, renv->mtx_regenv); 37 | 38 | if (ret == 0) 39 | return (0); 40 | 41 | __db_errx(dbenv, 42 | "Encrypted environment: library build did not include cryptography support"); 43 | return (DB_OPNOTSUP); 44 | } 45 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/ctime.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 2001,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: ctime.c,v 12.12 2007/05/17 15:14:54 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __db_ctime -- 15 | * Format a time-stamp. 16 | * 17 | * PUBLIC: char *__db_ctime __P((const time_t *, char *)); 18 | */ 19 | char * 20 | __db_ctime(tod, time_buf) 21 | const time_t *tod; 22 | char *time_buf; 23 | { 24 | time_buf[CTIME_BUFLEN - 1] = '\0'; 25 | 26 | /* 27 | * The ctime_r interface is the POSIX standard, thread-safe version of 28 | * ctime. However, it was implemented in two different ways (with and 29 | * without a buffer length argument), and you can't depend on a return 30 | * value of (char *), the version in HPUX 10.XX returned an int. 31 | */ 32 | #if defined(HAVE_CTIME_R_3ARG) 33 | (void)ctime_r(tod, time_buf, CTIME_BUFLEN); 34 | #elif defined(HAVE_CTIME_R) 35 | (void)ctime_r(tod, time_buf); 36 | #else 37 | (void)strncpy(time_buf, ctime(tod), CTIME_BUFLEN - 1); 38 | #endif 39 | return (time_buf); 40 | } 41 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/env_globals.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1999,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: env_globals.c,v 1.2 2007/05/17 15:15:11 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | /* 12 | * This is the file that initializes the global array. Do it this way because 13 | * people keep changing the structure without changing the initialization code. 14 | * Having declaration and initialization in one file will hopefully fix that. 15 | */ 16 | #define DB_INITIALIZE_DB_GLOBALS 1 17 | 18 | #include "db_int.h" 19 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/os_abort.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 2005,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_abort.c,v 1.7 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_abort -- 15 | * 16 | * PUBLIC: void __os_abort __P((void)); 17 | */ 18 | void 19 | __os_abort() 20 | { 21 | #ifdef HAVE_ABORT 22 | abort(); /* Try and drop core. */ 23 | #else 24 | #ifdef SIGABRT 25 | (void)raise(SIGABRT); /* Try and drop core. */ 26 | #endif 27 | exit(1); /* Quit anyway. */ 28 | /* NOTREACHED */ 29 | #endif 30 | } 31 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/os_abs.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1997,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_abs.c,v 12.6 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_abspath -- 15 | * Return if a path is an absolute path. 16 | * 17 | * PUBLIC: int __os_abspath __P((const char *)); 18 | */ 19 | int 20 | __os_abspath(path) 21 | const char *path; 22 | { 23 | return (path[0] == '/'); 24 | } 25 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/os_clock.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 2001,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_clock.c,v 12.14 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_gettime -- 15 | * Return the current time-of-day clock in seconds and nanoseconds. 16 | * 17 | * PUBLIC: void __os_gettime __P((DB_ENV *, db_timespec *)); 18 | */ 19 | void 20 | __os_gettime(dbenv, tp) 21 | DB_ENV *dbenv; 22 | db_timespec *tp; 23 | { 24 | const char *sc; 25 | int ret; 26 | 27 | #if defined(HAVE_CLOCK_GETTIME) 28 | RETRY_CHK((clock_gettime(CLOCK_REALTIME, (struct timespec *)tp)), ret); 29 | if (ret != 0) { 30 | sc = "clock_gettime"; 31 | goto err; 32 | } 33 | #endif 34 | #if !defined(HAVE_CLOCK_GETTIME) && defined(HAVE_GETTIMEOFDAY) 35 | struct timeval v; 36 | 37 | RETRY_CHK((gettimeofday(&v, NULL)), ret); 38 | if (ret != 0) { 39 | sc = "gettimeofday"; 40 | goto err; 41 | } 42 | 43 | tp->tv_sec = v.tv_sec; 44 | tp->tv_nsec = v.tv_usec * NS_PER_US; 45 | #endif 46 | #if !defined(HAVE_GETTIMEOFDAY) && !defined(HAVE_CLOCK_GETTIME) 47 | time_t now; 48 | 49 | RETRY_CHK((time(&now) == (time_t)-1 ? 1 : 0), ret); 50 | if (ret != 0) { 51 | sc = "time"; 52 | goto err; 53 | } 54 | 55 | tp->tv_sec = now; 56 | tp->tv_nsec = 0; 57 | #endif 58 | return; 59 | 60 | err: __db_syserr(dbenv, ret, "%s", sc); 61 | (void)__db_panic(dbenv, __os_posix_err(ret)); 62 | } 63 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/os_config.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1998,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_config.c,v 12.8 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_fs_notzero -- 15 | * Return 1 if allocated filesystem blocks are not zeroed. 16 | * 17 | * PUBLIC: int __os_fs_notzero __P((void)); 18 | */ 19 | int 20 | __os_fs_notzero() 21 | { 22 | /* Most filesystems zero out implicitly created pages. */ 23 | return (0); 24 | } 25 | 26 | /* 27 | * __os_support_direct_io -- 28 | * Return 1 if we support direct I/O. 29 | * 30 | * PUBLIC: int __os_support_direct_io __P((void)); 31 | */ 32 | int 33 | __os_support_direct_io() 34 | { 35 | int ret; 36 | 37 | ret = 0; 38 | 39 | #ifdef HAVE_O_DIRECT 40 | ret = 1; 41 | #endif 42 | #if defined(HAVE_DIRECTIO) && defined(DIRECTIO_ON) 43 | ret = 1; 44 | #endif 45 | return (ret); 46 | } 47 | 48 | /* 49 | * __os_support_db_register -- 50 | * Return 1 if the system supports DB_REGISTER. 51 | * 52 | * PUBLIC: int __os_support_db_register __P((void)); 53 | */ 54 | int 55 | __os_support_db_register() 56 | { 57 | return (1); 58 | } 59 | 60 | /* 61 | * __os_support_replication -- 62 | * Return 1 if the system supports replication. 63 | * 64 | * PUBLIC: int __os_support_replication __P((void)); 65 | */ 66 | int 67 | __os_support_replication() 68 | { 69 | return (1); 70 | } 71 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/os_getenv.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1997,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_getenv.c,v 12.7 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_getenv -- 15 | * Retrieve an environment variable. 16 | * 17 | * PUBLIC: int __os_getenv __P((DB_ENV *, const char *, char **, size_t)); 18 | */ 19 | int 20 | __os_getenv(dbenv, name, bpp, buflen) 21 | DB_ENV *dbenv; 22 | const char *name; 23 | char **bpp; 24 | size_t buflen; 25 | { 26 | /* 27 | * If we have getenv, there's a value and the buffer is large enough: 28 | * copy value into the pointer, return 0 29 | * If we have getenv, there's a value and the buffer is too short: 30 | * set pointer to NULL, return EINVAL 31 | * If we have getenv and there's no value: 32 | * set pointer to NULL, return 0 33 | * If we don't have getenv: 34 | * set pointer to NULL, return 0 35 | */ 36 | #ifdef HAVE_GETENV 37 | char *p; 38 | 39 | if ((p = getenv(name)) != NULL) { 40 | if (strlen(p) < buflen) { 41 | (void)strcpy(*bpp, p); 42 | return (0); 43 | } 44 | 45 | *bpp = NULL; 46 | __db_errx(dbenv, 47 | "%s: buffer too small to hold environment variable %s", 48 | name, p); 49 | return (EINVAL); 50 | } 51 | #else 52 | COMPQUIET(dbenv, NULL); 53 | COMPQUIET(name, NULL); 54 | COMPQUIET(buflen, 0); 55 | #endif 56 | *bpp = NULL; 57 | return (0); 58 | } 59 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/os_mkdir.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1997,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_mkdir.c,v 12.20 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_mkdir -- 15 | * Create a directory. 16 | * 17 | * PUBLIC: int __os_mkdir __P((DB_ENV *, const char *, int)); 18 | */ 19 | int 20 | __os_mkdir(dbenv, name, mode) 21 | DB_ENV *dbenv; 22 | const char *name; 23 | int mode; 24 | { 25 | int ret; 26 | 27 | if (dbenv != NULL && 28 | FLD_ISSET(dbenv->verbose, DB_VERB_FILEOPS | DB_VERB_FILEOPS_ALL)) 29 | __db_msg(dbenv, "fileops: mkdir %s", name); 30 | 31 | /* Make the directory, with paranoid permissions. */ 32 | #if defined(HAVE_VXWORKS) 33 | RETRY_CHK((mkdir((char *)name)), ret); 34 | #else 35 | RETRY_CHK((mkdir(name, __db_omode("rwx------"))), ret); 36 | #endif 37 | if (ret != 0) 38 | return (__os_posix_err(ret)); 39 | 40 | /* Set the absolute permissions, if specified. */ 41 | #if !defined(HAVE_VXWORKS) 42 | if (mode != 0) { 43 | RETRY_CHK((chmod(name, mode)), ret); 44 | if (ret != 0) 45 | ret = __os_posix_err(ret); 46 | } 47 | #endif 48 | return (ret); 49 | } 50 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/os_rename.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1997,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_rename.c,v 12.10 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_rename -- 15 | * Rename a file. 16 | * 17 | * PUBLIC: int __os_rename __P((DB_ENV *, 18 | * PUBLIC: const char *, const char *, u_int32_t)); 19 | */ 20 | int 21 | __os_rename(dbenv, oldname, newname, silent) 22 | DB_ENV *dbenv; 23 | const char *oldname, *newname; 24 | u_int32_t silent; 25 | { 26 | int ret; 27 | 28 | if (dbenv != NULL && 29 | FLD_ISSET(dbenv->verbose, DB_VERB_FILEOPS | DB_VERB_FILEOPS_ALL)) 30 | __db_msg(dbenv, "fileops: rename %s to %s", oldname, newname); 31 | 32 | if (DB_GLOBAL(j_rename) != NULL) 33 | ret = DB_GLOBAL(j_rename)(oldname, newname); 34 | else 35 | RETRY_CHK((rename(oldname, newname)), ret); 36 | 37 | /* 38 | * If "silent" is not set, then errors are OK and we should not output 39 | * an error message. 40 | */ 41 | if (ret != 0) { 42 | if (!silent) 43 | __db_syserr( 44 | dbenv, ret, "rename %s %s", oldname, newname); 45 | ret = __os_posix_err(ret); 46 | } 47 | return (ret); 48 | } 49 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/os_root.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1999,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_root.c,v 12.7 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_isroot -- 15 | * Return if user has special permissions. 16 | * 17 | * PUBLIC: int __os_isroot __P((void)); 18 | */ 19 | int 20 | __os_isroot() 21 | { 22 | #ifdef HAVE_GETUID 23 | return (getuid() == 0); 24 | #else 25 | return (0); 26 | #endif 27 | } 28 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/os_rpath.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1997,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_rpath.c,v 12.7 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __db_rpath -- 15 | * Return the last path separator in the path or NULL if none found. 16 | * 17 | * PUBLIC: char *__db_rpath __P((const char *)); 18 | */ 19 | char * 20 | __db_rpath(path) 21 | const char *path; 22 | { 23 | const char *s, *last; 24 | 25 | s = path; 26 | last = NULL; 27 | if (PATH_SEPARATOR[1] != '\0') { 28 | for (; s[0] != '\0'; ++s) 29 | if (strchr(PATH_SEPARATOR, s[0]) != NULL) 30 | last = s; 31 | } else 32 | for (; s[0] != '\0'; ++s) 33 | if (s[0] == PATH_SEPARATOR[0]) 34 | last = s; 35 | return ((char *)last); 36 | } 37 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/os_truncate.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 2004,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_truncate.c,v 12.10 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_truncate -- 15 | * Truncate the file. 16 | * 17 | * PUBLIC: int __os_truncate __P((DB_ENV *, DB_FH *, db_pgno_t, u_int32_t)); 18 | */ 19 | int 20 | __os_truncate(dbenv, fhp, pgno, pgsize) 21 | DB_ENV *dbenv; 22 | DB_FH *fhp; 23 | db_pgno_t pgno; 24 | u_int32_t pgsize; 25 | { 26 | off_t offset; 27 | int ret; 28 | 29 | /* 30 | * Truncate a file so that "pgno" is discarded from the end of the 31 | * file. 32 | */ 33 | offset = (off_t)pgsize * pgno; 34 | 35 | if (dbenv != NULL && 36 | FLD_ISSET(dbenv->verbose, DB_VERB_FILEOPS | DB_VERB_FILEOPS_ALL)) 37 | __db_msg(dbenv, 38 | "fileops: truncate %s to %lu", fhp->name, (u_long)offset); 39 | 40 | if (DB_GLOBAL(j_ftruncate) != NULL) 41 | ret = DB_GLOBAL(j_ftruncate)(fhp->fd, offset); 42 | else { 43 | #ifdef HAVE_FTRUNCATE 44 | RETRY_CHK((ftruncate(fhp->fd, offset)), ret); 45 | #else 46 | ret = DB_OPNOTSUP; 47 | #endif 48 | } 49 | 50 | if (ret != 0) { 51 | __db_syserr(dbenv, ret, "ftruncate: %lu", (u_long)offset); 52 | ret = __os_posix_err(ret); 53 | } 54 | 55 | return (ret); 56 | } 57 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/os_uid.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 2001,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_uid.c,v 12.27 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_unique_id -- 15 | * Return a unique 32-bit value. 16 | * 17 | * PUBLIC: void __os_unique_id __P((DB_ENV *, u_int32_t *)); 18 | */ 19 | void 20 | __os_unique_id(dbenv, idp) 21 | DB_ENV *dbenv; 22 | u_int32_t *idp; 23 | { 24 | db_timespec v; 25 | pid_t pid; 26 | u_int32_t id; 27 | 28 | *idp = 0; 29 | 30 | /* 31 | * Our randomized value is comprised of our process ID, the current 32 | * time of day and a stack address, all XOR'd together. 33 | */ 34 | __os_id(dbenv, &pid, NULL); 35 | __os_gettime(dbenv, &v); 36 | 37 | id = (u_int32_t)pid ^ 38 | (u_int32_t)v.tv_sec ^ (u_int32_t)v.tv_nsec ^ P_TO_UINT32(&pid); 39 | 40 | /* 41 | * We could try and find a reasonable random-number generator, but 42 | * that's not all that easy to do. Seed and use srand()/rand(), if 43 | * we can find them. 44 | */ 45 | if (DB_GLOBAL(uid_init) == 0) { 46 | DB_GLOBAL(uid_init) = 1; 47 | srand((u_int)id); 48 | } 49 | id ^= (u_int)rand(); 50 | 51 | *idp = id; 52 | } 53 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-POSIX/os_yield.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1997,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_yield.c,v 12.14 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | #ifdef HAVE_SYSTEM_INCLUDE_FILES 14 | #if defined(HAVE_SCHED_YIELD) 15 | #include 16 | #endif 17 | #endif 18 | 19 | /* 20 | * __os_yield -- 21 | * Yield the processor. 22 | * 23 | * PUBLIC: void __os_yield __P((DB_ENV *)); 24 | */ 25 | void 26 | __os_yield(dbenv) 27 | DB_ENV *dbenv; 28 | { 29 | if (DB_GLOBAL(j_yield) != NULL) { 30 | (void)DB_GLOBAL(j_yield)(); 31 | return; 32 | } 33 | 34 | #if defined(HAVE_MUTEX_UI_THREADS) 35 | thr_yield(); 36 | #elif defined(HAVE_PTHREAD_YIELD) && \ 37 | (defined(HAVE_MUTEX_PTHREADS) || defined(HAVE_PTHREAD_API)) 38 | pthread_yield(); 39 | #elif defined(HAVE_SCHED_YIELD) 40 | (void)sched_yield(); 41 | #elif defined(HAVE_YIELD) 42 | yield(); 43 | #else 44 | __os_sleep(dbenv, 0, 1); 45 | #endif 46 | COMPQUIET(dbenv, NULL); 47 | } 48 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/crypto_stub.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1996,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: crypto_stub.c,v 12.7 2007/05/17 15:14:55 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __crypto_region_init -- 15 | * Initialize crypto. 16 | * 17 | * 18 | * !!! 19 | * We don't put this stub file in the crypto/ directory of the distribution 20 | * because that entire directory is removed for non-crypto distributions. 21 | * 22 | * PUBLIC: int __crypto_region_init __P((DB_ENV *)); 23 | */ 24 | int 25 | __crypto_region_init(dbenv) 26 | DB_ENV *dbenv; 27 | { 28 | REGENV *renv; 29 | REGINFO *infop; 30 | int ret; 31 | 32 | infop = dbenv->reginfo; 33 | renv = infop->primary; 34 | MUTEX_LOCK(dbenv, renv->mtx_regenv); 35 | ret = !(renv->cipher_off == INVALID_ROFF); 36 | MUTEX_UNLOCK(dbenv, renv->mtx_regenv); 37 | 38 | if (ret == 0) 39 | return (0); 40 | 41 | __db_errx(dbenv, 42 | "Encrypted environment: library build did not include cryptography support"); 43 | return (DB_OPNOTSUP); 44 | } 45 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/ctime.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 2001,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: ctime.c,v 12.12 2007/05/17 15:14:54 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __db_ctime -- 15 | * Format a time-stamp. 16 | * 17 | * PUBLIC: char *__db_ctime __P((const time_t *, char *)); 18 | */ 19 | char * 20 | __db_ctime(tod, time_buf) 21 | const time_t *tod; 22 | char *time_buf; 23 | { 24 | time_buf[CTIME_BUFLEN - 1] = '\0'; 25 | 26 | /* 27 | * The ctime_r interface is the POSIX standard, thread-safe version of 28 | * ctime. However, it was implemented in two different ways (with and 29 | * without a buffer length argument), and you can't depend on a return 30 | * value of (char *), the version in HPUX 10.XX returned an int. 31 | */ 32 | #if defined(HAVE_CTIME_R_3ARG) 33 | (void)ctime_r(tod, time_buf, CTIME_BUFLEN); 34 | #elif defined(HAVE_CTIME_R) 35 | (void)ctime_r(tod, time_buf); 36 | #else 37 | (void)strncpy(time_buf, ctime(tod), CTIME_BUFLEN - 1); 38 | #endif 39 | return (time_buf); 40 | } 41 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/env_globals.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1999,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: env_globals.c,v 1.2 2007/05/17 15:15:11 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | /* 12 | * This is the file that initializes the global array. Do it this way because 13 | * people keep changing the structure without changing the initialization code. 14 | * Having declaration and initialization in one file will hopefully fix that. 15 | */ 16 | #define DB_INITIALIZE_DB_GLOBALS 1 17 | 18 | #include "db_int.h" 19 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/os_abort.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 2005,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_abort.c,v 1.7 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_abort -- 15 | * 16 | * PUBLIC: void __os_abort __P((void)); 17 | */ 18 | void 19 | __os_abort() 20 | { 21 | #ifdef HAVE_ABORT 22 | abort(); /* Try and drop core. */ 23 | #else 24 | #ifdef SIGABRT 25 | (void)raise(SIGABRT); /* Try and drop core. */ 26 | #endif 27 | exit(1); /* Quit anyway. */ 28 | /* NOTREACHED */ 29 | #endif 30 | } 31 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/os_abs.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1997,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_abs.c,v 12.5 2007/05/17 15:15:49 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_abspath -- 15 | * Return if a path is an absolute path. 16 | */ 17 | int 18 | __os_abspath(path) 19 | const char *path; 20 | { 21 | /* 22 | * !!! 23 | * Check for drive specifications, e.g., "C:". In addition, the path 24 | * separator used by the win32 DB (PATH_SEPARATOR) is \; look for both 25 | * / and \ since these are user-input paths. 26 | */ 27 | if (isalpha(path[0]) && path[1] == ':') 28 | path += 2; 29 | return (path[0] == '/' || path[0] == '\\'); 30 | } 31 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/os_clock.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 2001,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_clock.c,v 12.11 2007/05/17 15:15:49 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_gettime -- 15 | * Return the current time-of-day clock in seconds and nanoseconds. 16 | */ 17 | void 18 | __os_gettime(dbenv, tp) 19 | DB_ENV *dbenv; 20 | db_timespec *tp; 21 | { 22 | #ifdef DB_WINCE 23 | DWORD ticks; 24 | 25 | ticks = GetTickCount(); 26 | 27 | tp->tv_sec = (u_int32_t)(ticks / 1000); 28 | tp->tv_nsec = (u_int32_t)((ticks % 1000) * MS_PER_NS); 29 | #else 30 | struct _timeb now; 31 | 32 | _ftime(&now); 33 | tp->tv_sec = now.time; 34 | tp->tv_nsec = now.millitm * MS_PER_NS; 35 | #endif 36 | } 37 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/os_fsync.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1997,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_fsync.c,v 12.10 2007/05/17 15:15:49 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_fsync -- 15 | * Flush a file descriptor. 16 | */ 17 | int 18 | __os_fsync(dbenv, fhp) 19 | DB_ENV *dbenv; 20 | DB_FH *fhp; 21 | { 22 | int ret; 23 | 24 | /* 25 | * Do nothing if the file descriptor has been marked as not requiring 26 | * any sync to disk. 27 | */ 28 | if (F_ISSET(fhp, DB_FH_NOSYNC)) 29 | return (0); 30 | 31 | if (dbenv != NULL && FLD_ISSET(dbenv->verbose, DB_VERB_FILEOPS_ALL)) 32 | __db_msg(dbenv, "fileops: flush %s", fhp->name); 33 | 34 | RETRY_CHK((!FlushFileBuffers(fhp->handle)), ret); 35 | if (ret != 0) { 36 | __db_syserr(dbenv, ret, "FlushFileBuffers"); 37 | ret = __os_posix_err(ret); 38 | } 39 | return (ret); 40 | } 41 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/os_mkdir.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1997,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_mkdir.c,v 12.3 2007/05/17 15:15:49 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_mkdir -- 15 | * Create a directory. 16 | * 17 | * PUBLIC: int __os_mkdir __P((DB_ENV *, const char *, int)); 18 | */ 19 | int 20 | __os_mkdir(dbenv, name, mode) 21 | DB_ENV *dbenv; 22 | const char *name; 23 | int mode; 24 | { 25 | int ret; 26 | _TCHAR *tname; 27 | 28 | if (dbenv != NULL && 29 | FLD_ISSET(dbenv->verbose, DB_VERB_FILEOPS | DB_VERB_FILEOPS_ALL)) 30 | __db_msg(dbenv, "fileops: mkdir %s", name); 31 | 32 | /* Make the directory, with paranoid permissions. */ 33 | TO_TSTRING(dbenv, name, tname, ret); 34 | if (ret != 0) 35 | return (ret); 36 | RETRY_CHK(!CreateDirectory(tname, NULL), ret); 37 | FREE_STRING(dbenv, tname); 38 | if (ret != 0) 39 | return (__os_posix_err(ret)); 40 | 41 | return (ret); 42 | } 43 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/os_root.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1999,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_root.c,v 12.7 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_isroot -- 15 | * Return if user has special permissions. 16 | * 17 | * PUBLIC: int __os_isroot __P((void)); 18 | */ 19 | int 20 | __os_isroot() 21 | { 22 | #ifdef HAVE_GETUID 23 | return (getuid() == 0); 24 | #else 25 | return (0); 26 | #endif 27 | } 28 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/os_rpath.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1997,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_rpath.c,v 12.7 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __db_rpath -- 15 | * Return the last path separator in the path or NULL if none found. 16 | * 17 | * PUBLIC: char *__db_rpath __P((const char *)); 18 | */ 19 | char * 20 | __db_rpath(path) 21 | const char *path; 22 | { 23 | const char *s, *last; 24 | 25 | s = path; 26 | last = NULL; 27 | if (PATH_SEPARATOR[1] != '\0') { 28 | for (; s[0] != '\0'; ++s) 29 | if (strchr(PATH_SEPARATOR, s[0]) != NULL) 30 | last = s; 31 | } else 32 | for (; s[0] != '\0'; ++s) 33 | if (s[0] == PATH_SEPARATOR[0]) 34 | last = s; 35 | return ((char *)last); 36 | } 37 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/os_seek.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1997,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_seek.c,v 12.11 2007/05/17 15:15:49 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_seek -- 15 | * Seek to a page/byte offset in the file. 16 | */ 17 | int 18 | __os_seek(dbenv, fhp, pgno, pgsize, relative) 19 | DB_ENV *dbenv; 20 | DB_FH *fhp; 21 | db_pgno_t pgno; 22 | u_int32_t pgsize; 23 | u_int32_t relative; 24 | { 25 | /* Yes, this really is how Microsoft designed their API. */ 26 | union { 27 | __int64 bigint; 28 | struct { 29 | unsigned long low; 30 | long high; 31 | }; 32 | } offbytes; 33 | off_t offset; 34 | int ret; 35 | 36 | offset = (off_t)pgsize * pgno + relative; 37 | 38 | if (dbenv != NULL && FLD_ISSET(dbenv->verbose, DB_VERB_FILEOPS_ALL)) 39 | __db_msg(dbenv, 40 | "fileops: seek %s to %lu", fhp->name, (u_long)offset); 41 | 42 | offbytes.bigint = offset; 43 | ret = (SetFilePointer(fhp->handle, offbytes.low, 44 | &offbytes.high, FILE_BEGIN) == (DWORD)-1) ? __os_get_syserr() : 0; 45 | 46 | if (ret == 0) { 47 | fhp->pgsize = pgsize; 48 | fhp->pgno = pgno; 49 | fhp->offset = relative; 50 | } else { 51 | __db_syserr(dbenv, ret, 52 | "seek: %lu: (%lu * %lu) + %lu", (u_long)offset, 53 | (u_long)pgno, (u_long)pgsize, (u_long)relative); 54 | ret = __os_posix_err(ret); 55 | } 56 | 57 | return (ret); 58 | } 59 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/os_sleep.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1997,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_sleep.c,v 12.8 2007/05/17 15:15:49 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_sleep -- 15 | * Yield the processor for a period of time. 16 | */ 17 | void 18 | __os_sleep(dbenv, secs, usecs) 19 | DB_ENV *dbenv; 20 | u_long secs, usecs; /* Seconds and microseconds. */ 21 | { 22 | COMPQUIET(dbenv, NULL); 23 | 24 | /* 25 | * It's important we yield the processor here so other processes or 26 | * threads can run. 27 | * 28 | * Sheer raving paranoia -- don't sleep for 0 time, in case some 29 | * implementation doesn't yield the processor in that case. 30 | */ 31 | Sleep(secs * MS_PER_SEC + (usecs / US_PER_MS) + 1); 32 | } 33 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/os_spin.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1997,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_spin.c,v 12.8 2007/05/17 15:15:49 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_spin -- 15 | * Return the number of default spins before blocking. 16 | */ 17 | u_int32_t 18 | __os_spin(dbenv) 19 | DB_ENV *dbenv; 20 | { 21 | SYSTEM_INFO SystemInfo; 22 | u_int32_t tas_spins; 23 | 24 | /* Get the number of processors */ 25 | GetSystemInfo(&SystemInfo); 26 | 27 | /* 28 | * Spin 50 times per processor -- we have anecdotal evidence that this 29 | * is a reasonable value. 30 | */ 31 | if (SystemInfo.dwNumberOfProcessors > 1) 32 | tas_spins = 50 * SystemInfo.dwNumberOfProcessors; 33 | else 34 | tas_spins = 1; 35 | 36 | return (tas_spins); 37 | } 38 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/os_uid.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 2001,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_uid.c,v 12.27 2007/05/17 15:15:46 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_unique_id -- 15 | * Return a unique 32-bit value. 16 | * 17 | * PUBLIC: void __os_unique_id __P((DB_ENV *, u_int32_t *)); 18 | */ 19 | void 20 | __os_unique_id(dbenv, idp) 21 | DB_ENV *dbenv; 22 | u_int32_t *idp; 23 | { 24 | db_timespec v; 25 | pid_t pid; 26 | u_int32_t id; 27 | 28 | *idp = 0; 29 | 30 | /* 31 | * Our randomized value is comprised of our process ID, the current 32 | * time of day and a stack address, all XOR'd together. 33 | */ 34 | __os_id(dbenv, &pid, NULL); 35 | __os_gettime(dbenv, &v); 36 | 37 | id = (u_int32_t)pid ^ 38 | (u_int32_t)v.tv_sec ^ (u_int32_t)v.tv_nsec ^ P_TO_UINT32(&pid); 39 | 40 | /* 41 | * We could try and find a reasonable random-number generator, but 42 | * that's not all that easy to do. Seed and use srand()/rand(), if 43 | * we can find them. 44 | */ 45 | if (DB_GLOBAL(uid_init) == 0) { 46 | DB_GLOBAL(uid_init) = 1; 47 | srand((u_int)id); 48 | } 49 | id ^= (u_int)rand(); 50 | 51 | *idp = id; 52 | } 53 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/os_yield.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 1997,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: os_yield.c,v 12.9 2007/05/17 15:15:49 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __os_yield -- 15 | * Yield the processor. 16 | */ 17 | void 18 | __os_yield(dbenv) 19 | DB_ENV *dbenv; 20 | { 21 | /* 22 | * The call to Sleep(0) is specified by MSDN to yield the current 23 | * thread's time slice to another thread of equal or greater priority. 24 | */ 25 | Sleep(0); 26 | } 27 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/rep_autop.c: -------------------------------------------------------------------------------- 1 | /* Do not edit: automatically built by gen_rec.awk. */ 2 | 3 | #include "db_config.h" 4 | 5 | #include "db_int.h" 6 | #include "dbinc/db_page.h" 7 | #include "dbinc/db_am.h" 8 | #include "dbinc/log.h" 9 | #include "dbinc/mp.h" 10 | #include "dbinc/txn.h" 11 | 12 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/util_cache.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 2000,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: util_cache.c,v 12.6 2007/05/17 15:14:55 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __db_util_cache -- 15 | * Compute if we have enough cache. 16 | * 17 | * PUBLIC: int __db_util_cache __P((DB *, u_int32_t *, int *)); 18 | */ 19 | int 20 | __db_util_cache(dbp, cachep, resizep) 21 | DB *dbp; 22 | u_int32_t *cachep; 23 | int *resizep; 24 | { 25 | u_int32_t pgsize; 26 | int ret; 27 | 28 | /* Get the current page size. */ 29 | if ((ret = dbp->get_pagesize(dbp, &pgsize)) != 0) 30 | return (ret); 31 | 32 | /* 33 | * The current cache size is in cachep. If it's insufficient, set the 34 | * the memory referenced by resizep to 1 and set cachep to the minimum 35 | * size needed. 36 | * 37 | * Make sure our current cache is big enough. We want at least 38 | * DB_MINPAGECACHE pages in the cache. 39 | */ 40 | if ((*cachep / pgsize) < DB_MINPAGECACHE) { 41 | *resizep = 1; 42 | *cachep = pgsize * DB_MINPAGECACHE; 43 | } else 44 | *resizep = 0; 45 | 46 | return (0); 47 | } 48 | -------------------------------------------------------------------------------- /3rdParty/libdb-4.6.21/src-WIN32/util_log.c: -------------------------------------------------------------------------------- 1 | /*- 2 | * See the file LICENSE for redistribution information. 3 | * 4 | * Copyright (c) 2000,2007 Oracle. All rights reserved. 5 | * 6 | * $Id: util_log.c,v 12.13 2007/05/17 15:14:55 bostic Exp $ 7 | */ 8 | 9 | #include "db_config.h" 10 | 11 | #include "db_int.h" 12 | 13 | /* 14 | * __db_util_logset -- 15 | * Log that we're running. 16 | * 17 | * PUBLIC: int __db_util_logset __P((const char *, char *)); 18 | */ 19 | int 20 | __db_util_logset(progname, fname) 21 | const char *progname; 22 | char *fname; 23 | { 24 | pid_t pid; 25 | FILE *fp; 26 | time_t now; 27 | char time_buf[CTIME_BUFLEN]; 28 | 29 | if ((fp = fopen(fname, "w")) == NULL) 30 | goto err; 31 | 32 | (void)time(&now); 33 | 34 | __os_id(NULL, &pid, NULL); 35 | fprintf(fp, 36 | "%s: %lu %s", progname, (u_long)pid, __db_ctime(&now, time_buf)); 37 | 38 | if (fclose(fp) == EOF) 39 | goto err; 40 | 41 | return (0); 42 | 43 | err: fprintf(stderr, "%s: %s: %s\n", progname, fname, strerror(errno)); 44 | return (1); 45 | } 46 | -------------------------------------------------------------------------------- /3rdParty/libzip-0.9/AUTHORS: -------------------------------------------------------------------------------- 1 | Dieter Baron 2 | Thomas Klausner -------------------------------------------------------------------------------- /3rdParty/libzip-0.9/NEWS: -------------------------------------------------------------------------------- 1 | 0.9 [2008/07/25] 2 | 3 | * on Windows, explictly set dllimport/dllexport 4 | * remove erroneous references to GPL 5 | * add support for torrentzip 6 | * new functions: zip_get_archive_flag, zip_set_archive_flag 7 | * zip_source_zip: add flag to force recompression 8 | * zip_sorce_file: only keep file open while reading from it 9 | 10 | 0.8 [2007/06/06] 11 | 12 | * fix for zip archives larger than 2GiB 13 | * fix zip_error_strerror to include libzip error string 14 | * add support for reading streamed zip files 15 | * new functions: zip_add_dir, zip_error_clear, zip_file_error_clear 16 | * add basic support for building with CMake (incomplete) 17 | 18 | 0.7.1 [2006/05/18] 19 | 20 | * bugfix for zip_close 21 | 22 | 0.7 [2006/05/06] 23 | 24 | * struct zip_stat increased for future encryption support 25 | * zip_add return value changed (now returns new index of added file) 26 | * shared library major bump because of previous two 27 | * added functions for reading and writing file and archive comments. 28 | New functions: zip_get_archive_comment, zip_get_file_comment, 29 | zip_set_archive_comment, zip_set_file_comment, zip_unchange_archive 30 | 31 | 0.6.1 [2005/07/14] 32 | 33 | * various bug fixes 34 | 35 | 0.6 [2005/06/09] 36 | 37 | * first standalone release 38 | * changed license to three-clause BSD 39 | * overhauled API 40 | * added man pages 41 | * install zipcmp and zipmerge 42 | -------------------------------------------------------------------------------- /3rdParty/libzip-0.9/README: -------------------------------------------------------------------------------- 1 | This is libzip, a C library for reading, creating, and modifying zip 2 | archives. Files can be added from data buffers, files, or compressed 3 | data copied directly from other zip archives. Changes made without 4 | closing the archive can be reverted. The API is documented by man 5 | pages. 6 | 7 | For more information, take a look at the included man pages. You 8 | can start with libzip(3), which lists all others. Example source code 9 | is in the src/ subdirectory. 10 | 11 | For generic installation instructions, see file `INSTALL'. 12 | Additionally, you'll need zlib (at least version 1.1.2). It comes 13 | with most operating systems nowadays, or you can get it at 14 | http://www.gzip.org/zlib/ 15 | 16 | If you make a binary distribution, please include a pointer to the 17 | distribution site: 18 | http://www.nih.at/libzip/ 19 | ftp.nih.at /pub/nih/libzip 20 | The latest version can always be found there. 21 | 22 | Mail suggestions and bug reports to . 23 | -------------------------------------------------------------------------------- /3rdParty/libzip-0.9/THANKS: -------------------------------------------------------------------------------- 1 | Thanks to Info-ZIP for info on the DOS-time/date conversion code, 2 | and some other general information gathered from their sources. 3 | 4 | Thanks to these people for suggestions, testing, and bug reports: 5 | 6 | Heiko Hund 7 | Joel Ebrahimi 8 | Pierre 9 | Roberto Tirabassi 10 | Stephen Bryant 11 | -------------------------------------------------------------------------------- /3rdParty/libzip-0.9/src/zip_err_str.c: -------------------------------------------------------------------------------- 1 | /* 2 | This file was generated automatically by ./make_zip_err_str.sh 3 | from ./zip.h; make changes there. 4 | */ 5 | 6 | #include "zipint.h" 7 | 8 | 9 | 10 | const char * const _zip_err_str[] = { 11 | "No error", 12 | "Multi-disk zip archives not supported", 13 | "Renaming temporary file failed", 14 | "Closing zip archive failed", 15 | "Seek error", 16 | "Read error", 17 | "Write error", 18 | "CRC error", 19 | "Containing zip archive was closed", 20 | "No such file", 21 | "File already exists", 22 | "Can't open file", 23 | "Failure to create temporary file", 24 | "Zlib error", 25 | "Malloc failure", 26 | "Entry has been changed", 27 | "Compression method not supported", 28 | "Premature EOF", 29 | "Invalid argument", 30 | "Not a zip archive", 31 | "Internal error", 32 | "Zip archive inconsistent", 33 | "Can't remove file", 34 | "Entry has been deleted", 35 | }; 36 | 37 | const int _zip_nerr_str = sizeof(_zip_err_str)/sizeof(_zip_err_str[0]); 38 | 39 | #define N ZIP_ET_NONE 40 | #define S ZIP_ET_SYS 41 | #define Z ZIP_ET_ZLIB 42 | 43 | const int _zip_err_type[] = { 44 | N, 45 | N, 46 | S, 47 | S, 48 | S, 49 | S, 50 | S, 51 | N, 52 | N, 53 | N, 54 | N, 55 | S, 56 | S, 57 | Z, 58 | N, 59 | N, 60 | N, 61 | N, 62 | N, 63 | N, 64 | N, 65 | N, 66 | S, 67 | N, 68 | }; 69 | -------------------------------------------------------------------------------- /3rdParty/protoc-1.0M4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/3rdParty/protoc-1.0M4.jar -------------------------------------------------------------------------------- /3rdParty/zlib-1.2.3/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | PROJECT (zlib) 8 | 9 | INCLUDE_DIRECTORIES (include) 10 | 11 | SET (zlib-sources 12 | src/adler32.c 13 | src/compress.c 14 | src/crc32.c 15 | src/gzio.c 16 | src/uncompr.c 17 | src/deflate.c 18 | src/trees.c 19 | src/zutil.c 20 | src/inflate.c 21 | src/infback.c 22 | src/inftrees.c 23 | src/inffast.c 24 | ) 25 | 26 | ADD_LIBRARY (zlib STATIC ${zlib-sources}) 27 | -------------------------------------------------------------------------------- /3rdParty/zlib-1.2.3/include/inffast.h: -------------------------------------------------------------------------------- 1 | /* inffast.h -- header to use inffast.c 2 | * Copyright (C) 1995-2003 Mark Adler 3 | * For conditions of distribution and use, see copyright notice in zlib.h 4 | */ 5 | 6 | /* WARNING: this file should *not* be used by applications. It is 7 | part of the implementation of the compression library and is 8 | subject to change. Applications should only use zlib.h. 9 | */ 10 | 11 | void inflate_fast OF((z_streamp strm, unsigned start)); 12 | -------------------------------------------------------------------------------- /AUTHORS: -------------------------------------------------------------------------------- 1 | Christian Berger 2 | Bernhard Rumpe 3 | -------------------------------------------------------------------------------- /COPYING: -------------------------------------------------------------------------------- 1 | There are different licenses with this software distribution: 2 | 3 | Data.odvd - GPL 2 4 | 5 | libopendavinci - LGPL 2.1 6 | libvehicle - LGPL 2.1 7 | 8 | hesperia/camgen - GPL 2 9 | hesperia/chasecar - GPL 2 10 | hesperia/cockpit - GPL 2 11 | hesperia/drivenpath - GPL 2 12 | hesperia/egocontroller - GPL 2 13 | hesperia/irus - GPL 2 14 | hesperia/libhesperia - GPL 2 15 | hesperia/rec2stdout - GPL 2 16 | hesperia/vehicle - GPL 2 17 | 18 | tools/player - GPL 2 19 | tools/recorder - GPL 2 20 | tools/recintegrity - GPL 2 21 | tools/split - GPL 2 22 | tools/spy - GPL 2 23 | 24 | supercomponent - GPL 2 25 | -------------------------------------------------------------------------------- /ChangeLog: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/ChangeLog -------------------------------------------------------------------------------- /Data.odvd: -------------------------------------------------------------------------------- 1 | /* 2 | * Data.odvd - Data structures for miniature cars. 3 | * Copyright (C) 2015 Christian Berger 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | message msv.SteeringData { 21 | double exampleData; 22 | } 23 | 24 | message msv.UserButtonData { 25 | enum ButtonStatus { 26 | UNDEFINED = -1, 27 | RELEASED = 0, 28 | PRESSED = 1, 29 | }; 30 | ButtonStatus buttonStatus; 31 | double duration; 32 | } 33 | 34 | message msv.SensorBoardData { 35 | uint32 numberOfSensors; 36 | map distances; 37 | } 38 | 39 | -------------------------------------------------------------------------------- /Diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/Diagram.png -------------------------------------------------------------------------------- /PandaBoard-Toolchain.cmake: -------------------------------------------------------------------------------- 1 | SET(CMAKE_SYSTEM_NAME Linux) 2 | 3 | # This flag sets further include and library paths in dependent CMakeLists.txt 4 | SET(PANDABOARD YES) 5 | 6 | # This flag sets the root path of the PandaBoard's SD root path 7 | SET(PANDABOARD-ROOT /opt/PandaBoard-SD) 8 | 9 | # Specify the cross compiler. 10 | SET(CMAKE_C_COMPILER /usr/bin/arm-linux-gnueabihf-gcc) 11 | SET(CMAKE_CXX_COMPILER /usr/bin/arm-linux-gnueabihf-g++) 12 | 13 | # Specify the location of the target environment. 14 | SET(CMAKE_FIND_ROOT_PATH /opt/PandaBoard-SD) 15 | 16 | # Specify the search directory for programs in the build host directories. 17 | SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) 18 | 19 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | This is OpenDaVINCI - Open Source Development Architecture for Networked Cyber-Physical System Infrastructures. 2 | 3 | For further information please see www.christianberger.net/opendavinci. 4 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # AutoDriveSim 2 | AutoDrive simulation using opendavinci 3 | 4 | ![Alt text](Diagram.png?raw=true) 5 | 6 | ### Instructions 7 | This guide assumes you are using the [pre-built virtual machine image](http://www.cse.chalmers.se/%7Ebergerc/msv4/2015-01-22_MiniSmartVehicles4.ova) (user:msv)(pass:msv). 8 | #### Download the Repository 9 | ``` 10 | cd ~ 11 | git clone git@github.com:davidkron/AutodriveSim.git 12 | ``` 13 | #### Compile and Install OpenDaVINCI 14 | Create installation directory for the OpenDaVINCI code (this repository's code). 15 | ``` 16 | sudo mkdir /opt/odv 17 | sudo chown msv:msv /opt/odv 18 | ``` 19 | Finally, compile and install. 20 | ``` 21 | cd ~/AutodriveSim 22 | ./build.sh 23 | ``` 24 | #### Run OpenDaVINCI 25 | ``` 26 | cd ~/AutodriveSim 27 | ./autodrive.sh 28 | ``` 29 | 30 | ### Buildscripts 31 | * **build.sh** - Generates and compiles makefiles (run this the first time and whenever you make cmake modifications) 32 | * **compile.sh** - Only compiles from makefiles 33 | * **autodrive.sh** - Runs the necessary components for simulation 34 | -------------------------------------------------------------------------------- /_buildtools/DataStructureGenerator-r9.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/_buildtools/DataStructureGenerator-r9.jar -------------------------------------------------------------------------------- /_buildtools/FindRequiredLibraries.cmake: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | INCLUDE(CheckIncludeFiles) 8 | INCLUDE(CheckIncludeFileCXX) 9 | 10 | IF(UNIX) 11 | IF("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") 12 | SET (THIRDPARTY_LIBS pthread rt) 13 | ELSE("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") 14 | SET (THIRDPARTY_LIBS pthread) 15 | ENDIF("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") 16 | ENDIF(UNIX) 17 | 18 | # Set 3rd party libraries shipped with this distribution. 19 | SET (THIRDPARTY_LIBS ${THIRDPARTY_LIBS} ziplib zlib dblib) 20 | 21 | # Set libraries to link. 22 | SET (OPENDAVINCI_LIBS opendavinci) 23 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/TODO: -------------------------------------------------------------------------------- 1 | This is an -*- Outline -*- of ideas for future versions of CxxTest. 2 | It is not meant to be "human readable". 3 | 4 | * CxxTest To Do list 5 | 6 | ** Mock framework 7 | 8 | Write some mocks 9 | 10 | *** Distribution 11 | Seperate packages (w/ binaries)? How would that be used? 12 | For Windows: .lib for "Real" and "Mock" parts. 13 | For Linux: Maybe. Different compilers etc. 14 | So probably only source release with Makefiles and .ds[pw]? Or just Win32 binary. 15 | 16 | **** Installation? 17 | extract cxxtest-x.y.z.tar.gz 18 | (extract cxxtest-mock-x.y.z.tar.gz) ? 19 | make -C cxxtest/Real 20 | make -C cxxtest/Mock 21 | 22 | or maybe make -C cxxtest -f Makefile.mock 23 | but then Makefile.mock.bcc32, Makefile.mock.msvc, Makefile.mock.gcc, and heaven knows what else. 24 | 25 | Could put the Makefile.mock.* in cxxtest/Real and cxxtest/Mock or in cxxtest/T 26 | 27 | Maybe this should be a different package altogether? 28 | Seems logical, since they evolve separately. But then you'd want to download both. 29 | 30 | ** Thoughts 31 | -fomit-frame-pointer 32 | 33 | ** TS_HEX 34 | 35 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/cxxtest.spec: -------------------------------------------------------------------------------- 1 | Name: cxxtest 2 | Summary: CxxTest Testing Framework for C++ 3 | Version: 3.10.1 4 | Release: 1 5 | Copyright: LGPL 6 | Group: Development/C++ 7 | Source: cxxtest-%{version}.tar.gz 8 | BuildRoot: /tmp/cxxtest-build 9 | BuildArch: noarch 10 | Prefix: /usr 11 | 12 | %description 13 | CxxTest is a JUnit/CppUnit/xUnit-like framework for C++. 14 | Its advantages over existing alternatives are that it: 15 | - Doesn't require RTTI 16 | - Doesn't require member template functions 17 | - Doesn't require exception handling 18 | - Doesn't require any external libraries (including memory management, 19 | file/console I/O, graphics libraries) 20 | 21 | %prep 22 | %setup -n cxxtest 23 | 24 | %build 25 | 26 | %install 27 | install -m 755 -d $RPM_BUILD_ROOT/usr/bin $RPM_BUILD_ROOT/usr/include/cxxtest 28 | install -m 755 cxxtestgen.p[ly] $RPM_BUILD_ROOT/usr/bin/ 29 | install -m 644 cxxtest/* $RPM_BUILD_ROOT/usr/include/cxxtest/ 30 | 31 | %clean 32 | rm -rf $RPM_BUILD_ROOT 33 | 34 | %files 35 | %attr(-, root, root) %doc README 36 | %attr(-, root, root) %doc sample 37 | %attr(-, root, root) /usr/include/cxxtest 38 | %attr(-, root, root) /usr/bin/cxxtestgen.pl 39 | %attr(-, root, root) /usr/bin/cxxtestgen.py 40 | 41 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/cxxtest/GlobalFixture.cpp: -------------------------------------------------------------------------------- 1 | #ifndef __cxxtest__GlobalFixture_cpp__ 2 | #define __cxxtest__GlobalFixture_cpp__ 3 | 4 | #include 5 | 6 | namespace CxxTest 7 | { 8 | bool GlobalFixture::setUpWorld() { return true; } 9 | bool GlobalFixture::tearDownWorld() { return true; } 10 | bool GlobalFixture::setUp() { return true; } 11 | bool GlobalFixture::tearDown() { return true; } 12 | 13 | GlobalFixture::GlobalFixture() { attach( _list ); } 14 | GlobalFixture::~GlobalFixture() { detach( _list ); } 15 | 16 | GlobalFixture *GlobalFixture::firstGlobalFixture() { return (GlobalFixture *)_list.head(); } 17 | GlobalFixture *GlobalFixture::lastGlobalFixture() { return (GlobalFixture *)_list.tail(); } 18 | GlobalFixture *GlobalFixture::nextGlobalFixture() { return (GlobalFixture *)next(); } 19 | GlobalFixture *GlobalFixture::prevGlobalFixture() { return (GlobalFixture *)prev(); } 20 | } 21 | 22 | #endif // __cxxtest__GlobalFixture_cpp__ 23 | 24 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/cxxtest/GlobalFixture.h: -------------------------------------------------------------------------------- 1 | #ifndef __cxxtest__GlobalFixture_h__ 2 | #define __cxxtest__GlobalFixture_h__ 3 | 4 | #include 5 | 6 | namespace CxxTest 7 | { 8 | class GlobalFixture : public Link 9 | { 10 | public: 11 | virtual bool setUpWorld(); 12 | virtual bool tearDownWorld(); 13 | virtual bool setUp(); 14 | virtual bool tearDown(); 15 | 16 | GlobalFixture(); 17 | ~GlobalFixture(); 18 | 19 | static GlobalFixture *firstGlobalFixture(); 20 | static GlobalFixture *lastGlobalFixture(); 21 | GlobalFixture *nextGlobalFixture(); 22 | GlobalFixture *prevGlobalFixture(); 23 | 24 | private: 25 | static List _list; 26 | }; 27 | } 28 | 29 | #endif // __cxxtest__GlobalFixture_h__ 30 | 31 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/cxxtest/LinkedList.h: -------------------------------------------------------------------------------- 1 | #ifndef __cxxtest__LinkedList_h__ 2 | #define __cxxtest__LinkedList_h__ 3 | 4 | #include 5 | 6 | namespace CxxTest 7 | { 8 | struct List; 9 | class Link; 10 | 11 | struct List 12 | { 13 | Link *_head; 14 | Link *_tail; 15 | 16 | void initialize(); 17 | 18 | Link *head(); 19 | const Link *head() const; 20 | Link *tail(); 21 | const Link *tail() const; 22 | 23 | bool empty() const; 24 | unsigned size() const; 25 | Link *nth( unsigned n ); 26 | 27 | void activateAll(); 28 | void leaveOnly( const Link &link ); 29 | }; 30 | 31 | class Link 32 | { 33 | public: 34 | Link(); 35 | virtual ~Link(); 36 | 37 | bool active() const; 38 | void setActive( bool value = true ); 39 | 40 | Link *justNext(); 41 | Link *justPrev(); 42 | 43 | Link *next(); 44 | Link *prev(); 45 | const Link *next() const; 46 | const Link *prev() const; 47 | 48 | virtual bool setUp() = 0; 49 | virtual bool tearDown() = 0; 50 | 51 | void attach( List &l ); 52 | void detach( List &l ); 53 | 54 | private: 55 | Link *_next; 56 | Link *_prev; 57 | bool _active; 58 | 59 | Link( const Link & ); 60 | Link &operator=( const Link & ); 61 | }; 62 | } 63 | 64 | #endif // __cxxtest__LinkedList_h__ 65 | 66 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/cxxtest/Memwatch.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/_buildtools/cxxtest/cxxtest/Memwatch.cpp -------------------------------------------------------------------------------- /_buildtools/cxxtest/cxxtest/ParenPrinter.h: -------------------------------------------------------------------------------- 1 | #ifndef __cxxtest__ParenPrinter_h__ 2 | #define __cxxtest__ParenPrinter_h__ 3 | 4 | // 5 | // The ParenPrinter is identical to the ErrorPrinter, except it 6 | // prints the line number in a format expected by some compilers 7 | // (notably, MSVC). 8 | // 9 | 10 | #include 11 | 12 | namespace CxxTest 13 | { 14 | class ParenPrinter : public ErrorPrinter 15 | { 16 | public: 17 | ParenPrinter( CXXTEST_STD(ostream) &o = CXXTEST_STD(cout) ) : ErrorPrinter( o, "(", ")" ) {} 18 | }; 19 | } 20 | 21 | #endif // __cxxtest__ParenPrinter_h__ 22 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/cxxtest/Root.cpp: -------------------------------------------------------------------------------- 1 | #ifndef __cxxtest__Root_cpp__ 2 | #define __cxxtest__Root_cpp__ 3 | 4 | // 5 | // This file holds the "root" of CxxTest, i.e. 6 | // the parts that must be in a source file file. 7 | // 8 | 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | #include 16 | #include 17 | 18 | #endif // __cxxtest__Root_cpp__ 19 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/cxxtest/SelfTest.h: -------------------------------------------------------------------------------- 1 | #ifndef __cxxtest_SelfTest_h__ 2 | #define __cxxtest_SelfTest_h__ 3 | 4 | #define CXXTEST_SUITE(name) 5 | #define CXXTEST_CODE(member) 6 | 7 | #endif // __cxxtest_SelfTest_h__ 8 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/cxxtest/StdHeaders.h: -------------------------------------------------------------------------------- 1 | #ifndef __cxxtest_StdHeaders_h__ 2 | #define __cxxtest_StdHeaders_h__ 3 | 4 | // 5 | // This file basically #includes the STL headers. 6 | // It exists to support warning level 4 in Visual C++ 7 | // 8 | 9 | #ifdef _MSC_VER 10 | # pragma warning( push, 1 ) 11 | #endif // _MSC_VER 12 | 13 | #include 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | 21 | #ifdef _MSC_VER 22 | # pragma warning( pop ) 23 | #endif // _MSC_VER 24 | 25 | #endif // __cxxtest_StdHeaders_h__ 26 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/cxxtest/StdString.h: -------------------------------------------------------------------------------- 1 | #ifndef __CXXTEST_PRESYSTEM_H 2 | #define __CXXTEST_PRESYSTEM_H 3 | 4 | // 5 | // This file basically does #include 6 | // It exists to support warning level 4 in Visual C++ 7 | // 8 | 9 | #ifdef _MSC_VER 10 | # pragma warning( push, 1 ) 11 | #endif // _MSC_VER 12 | 13 | #include 14 | 15 | #ifdef _MSC_VER 16 | # pragma warning( pop ) 17 | #endif // _MSC_VER 18 | 19 | #endif // __CXXTEST_PRESYSTEM_H 20 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/cxxtest/StdioFilePrinter.h: -------------------------------------------------------------------------------- 1 | #ifndef __cxxtest__StdioFilePrinter_h__ 2 | #define __cxxtest__StdioFilePrinter_h__ 3 | 4 | // 5 | // The StdioFilePrinter is a simple TestListener that 6 | // just prints "OK" if everything goes well, otherwise 7 | // reports the error in the format of compiler messages. 8 | // This class uses , i.e. FILE * and fprintf(). 9 | // 10 | 11 | #include 12 | #include 13 | 14 | namespace CxxTest 15 | { 16 | class StdioFilePrinter : public ErrorFormatter 17 | { 18 | public: 19 | StdioFilePrinter( FILE *o, const char *preLine = ":", const char *postLine = "" ) : 20 | ErrorFormatter( new Adapter(o), preLine, postLine ) {} 21 | virtual ~StdioFilePrinter() { delete outputStream(); } 22 | 23 | private: 24 | class Adapter : public OutputStream 25 | { 26 | Adapter( const Adapter & ); 27 | Adapter &operator=( const Adapter & ); 28 | 29 | FILE *_o; 30 | 31 | public: 32 | Adapter( FILE *o ) : _o(o) {} 33 | void flush() { fflush( _o ); } 34 | OutputStream &operator<<( unsigned i ) { fprintf( _o, "%u", i ); return *this; } 35 | OutputStream &operator<<( const char *s ) { fputs( s, _o ); return *this; } 36 | OutputStream &operator<<( Manipulator m ) { return OutputStream::operator<<( m ); } 37 | }; 38 | }; 39 | } 40 | 41 | #endif // __cxxtest__StdioFilePrinter_h__ 42 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/cxxtest/StdioPrinter.h: -------------------------------------------------------------------------------- 1 | #ifndef __cxxtest__StdioPrinter_h__ 2 | #define __cxxtest__StdioPrinter_h__ 3 | 4 | // 5 | // The StdioPrinter is an StdioFilePrinter which defaults to stdout. 6 | // This should have been called StdOutPrinter or something, but the name 7 | // has been historically used. 8 | // 9 | 10 | #include 11 | 12 | namespace CxxTest 13 | { 14 | class StdioPrinter : public StdioFilePrinter 15 | { 16 | public: 17 | StdioPrinter( FILE *o = stdout, const char *preLine = ":", const char *postLine = "" ) : 18 | StdioFilePrinter( o, preLine, postLine ) {} 19 | }; 20 | } 21 | 22 | #endif // __cxxtest__StdioPrinter_h__ 23 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/cxxtest/XmlFilePrinter.h: -------------------------------------------------------------------------------- 1 | #ifndef __cxxtest__XmlFilePrinter_h__ 2 | #define __cxxtest__XmlFilePrinter_h__ 3 | 4 | // 5 | // The XmlFilePrinter is a simple TestListener that 6 | // uses the XmlFormatter for formatting the test suites' output. 7 | // This class uses , i.e. FILE * and fprintf(). 8 | // 9 | 10 | #include 11 | #include 12 | #include 13 | 14 | namespace CxxTest 15 | { 16 | class XmlFilePrinter : public XmlFormatter 17 | { 18 | public: 19 | XmlFilePrinter(std::string s) : 20 | XmlFormatter( new Adapter( fopen( (s.length() > 0 ? s.c_str() : "TestSuiteReport.xml"), "w" ) ) ) {} 21 | virtual ~XmlFilePrinter() { delete outputStream(); } 22 | 23 | private: 24 | class Adapter : public OutputStream 25 | { 26 | Adapter( const Adapter & ); 27 | Adapter &operator=( const Adapter & ); 28 | 29 | FILE *_o; 30 | 31 | public: 32 | Adapter( FILE *o ) : _o(o) {} 33 | void flush() { fflush( _o ); } 34 | OutputStream &operator<<( unsigned i ) { fprintf( _o, "%u", i ); return *this; } 35 | OutputStream &operator<<( const char *s ) { fputs( s, _o ); return *this; } 36 | OutputStream &operator<<( Manipulator m ) { return OutputStream::operator<<( m ); } 37 | }; 38 | }; 39 | } 40 | 41 | #endif // __cxxtest__XmlFilePrinter_h__ 42 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/cxxtest/YesNoRunner.h: -------------------------------------------------------------------------------- 1 | #ifndef __cxxtest__YesNoRunner_h__ 2 | #define __cxxtest__YesNoRunner_h__ 3 | 4 | // 5 | // The YesNoRunner is a simple TestListener that 6 | // just returns true iff all tests passed. 7 | // 8 | 9 | #include 10 | #include 11 | 12 | namespace CxxTest 13 | { 14 | class YesNoRunner : public TestListener 15 | { 16 | public: 17 | YesNoRunner() 18 | { 19 | } 20 | 21 | int run() 22 | { 23 | TestRunner::runAllTests( *this ); 24 | return tracker().failedTests(); 25 | } 26 | }; 27 | } 28 | 29 | #endif // __cxxtest__YesNoRunner_h__ 30 | -------------------------------------------------------------------------------- /_buildtools/cxxtest/docs/qt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/_buildtools/cxxtest/docs/qt.png -------------------------------------------------------------------------------- /_buildtools/cxxtest/docs/qt2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/_buildtools/cxxtest/docs/qt2.png -------------------------------------------------------------------------------- /_buildtools/cxxtest/docs/win32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/_buildtools/cxxtest/docs/win32.png -------------------------------------------------------------------------------- /_buildtools/cxxtest/docs/x11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/_buildtools/cxxtest/docs/x11.png -------------------------------------------------------------------------------- /add_remote_Autodrive.sh: -------------------------------------------------------------------------------- 1 | if ! git ls-remote --exit-code Autodrive 2 | then 3 | git remote add Autodrive https://github.com/davidkron/Autodrive.git 4 | fi -------------------------------------------------------------------------------- /apps/AutodriveSim/Autodrive/.gitignore: -------------------------------------------------------------------------------- 1 | ### CMake ### 2 | CMakeCache.txt 3 | CMakeFiles 4 | Makefile 5 | cmake_install.cmake 6 | install_manifest.txt 7 | 8 | ### VisualStudio ### 9 | ## Ignore Visual Studio temporary files, build results, and 10 | ## files generated by popular Visual Studio add-ons. 11 | 12 | # User-specific files 13 | *.suo 14 | *.user 15 | *.userosscache 16 | *.sln.docstates 17 | 18 | 19 | # User-specific files (MonoDevelop/Xamarin Studio) 20 | *.userprefs 21 | 22 | # Build results 23 | [Dd]ebug/ 24 | [Dd]ebugPublic/ 25 | [Rr]elease/ 26 | [Rr]eleases/ 27 | x64/ 28 | x86/ 29 | build/ 30 | bld/ 31 | [Bb]in/ 32 | [Oo]bj/ 33 | 34 | *.ilk 35 | *.meta 36 | *.obj 37 | *.pch 38 | *.pdb 39 | *.pgc 40 | *.pgd 41 | *.rsp 42 | *.sbr 43 | *.tlb 44 | *.tli 45 | *.tlh 46 | *.tmp 47 | *.tmp_proj 48 | *.log 49 | *.vspscc 50 | *.vssscc 51 | .builds 52 | *.pidb 53 | *.svclog 54 | *.scc 55 | 56 | # Compiled Object files 57 | *.slo 58 | *.lo 59 | *.o 60 | *.obj 61 | 62 | # Precompiled Headers 63 | *.gch 64 | *.pch 65 | 66 | # Compiled Dynamic libraries 67 | *.so 68 | *.dylib 69 | *.dll 70 | 71 | # Fortran module files 72 | *.mod 73 | 74 | # Compiled Static libraries 75 | *.lai 76 | *.la 77 | *.a 78 | *.lib 79 | 80 | # Executables 81 | *.exe 82 | *.out 83 | *.app 84 | -------------------------------------------------------------------------------- /apps/AutodriveSim/Autodrive/Diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/apps/AutodriveSim/Autodrive/Diagram.png -------------------------------------------------------------------------------- /apps/AutodriveSim/Autodrive/Include/command.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include 3 | 4 | namespace Autodrive { 5 | 6 | struct command{ 7 | bool changedAngle = false; 8 | bool changedSpeed = false; 9 | double angle = 0; 10 | double speed = 0; 11 | inline void setSpeed(double newSpeed) 12 | { 13 | assert(newSpeed >= -1.0 && newSpeed <= 1.0); 14 | changedSpeed = true; 15 | speed = newSpeed; 16 | } 17 | inline void setAngle(double newAngle) 18 | { 19 | assert(newAngle >= -1.0 && newAngle <= 1.0); 20 | changedAngle = true; 21 | angle = newAngle; 22 | } 23 | }; 24 | 25 | } 26 | -------------------------------------------------------------------------------- /apps/AutodriveSim/Autodrive/Include/imageprocessor/lightnormalizer.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include 3 | #include 4 | 5 | namespace Autodrive 6 | { 7 | inline void normalizeLightning(cv::Mat* bgr_image,int blur = 20,float intensity = 0.5f) 8 | { 9 | cv::Mat light_mat; 10 | cv::blur(*bgr_image, light_mat, cv::Size(blur, blur)); 11 | cv::cvtColor(light_mat, light_mat, CV_BGR2GRAY); 12 | 13 | cv::Mat lab_image; 14 | cv::cvtColor(*bgr_image, *bgr_image, CV_BGR2Lab); 15 | 16 | // Extract the L channel 17 | std::vector lab_planes(3); 18 | cv::split(*bgr_image, lab_planes); // now we have the L image in lab_planes[0] 19 | 20 | lab_planes[0] = lab_planes[0] - light_mat*intensity; 21 | 22 | // Merge the the color planes back into an Lab image 23 | cv::merge(lab_planes, *bgr_image); 24 | 25 | // convert back to RGB 26 | cv::cvtColor(*bgr_image, *bgr_image, CV_Lab2BGR); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /apps/AutodriveSim/Autodrive/Include/sensordata.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include 3 | 4 | namespace Autodrive 5 | { 6 | namespace SensorData 7 | { 8 | struct ultrasound_t { 9 | int front; 10 | int frontright; 11 | int rear; 12 | } ultrasound = { 0, 0, 0 }; 13 | 14 | struct infrared_t { 15 | int frontright; 16 | int rearright; 17 | int rear; 18 | } infrared = { 0, 0, 0 }; 19 | 20 | double PULSES_PER_CM = 1; 21 | long encoderPulses = 0; 22 | 23 | int razorHeading = 0; // from -180 to 180 24 | int gyroHeading = 0; // NOT from 0 to 360 25 | 26 | int currentSpeed = 0; 27 | int currentAngle = 0; 28 | 29 | int carLength = 1; 30 | 31 | void setCarLength(int length) 32 | { 33 | carLength = length; 34 | } 35 | 36 | double encoderDistance() 37 | { 38 | return encoderPulses / PULSES_PER_CM; 39 | } 40 | cv::Mat* image = 0; 41 | 42 | }; 43 | 44 | } 45 | -------------------------------------------------------------------------------- /apps/AutodriveSim/Autodrive/Include/settings.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | namespace Autodrive 3 | { 4 | namespace Settings 5 | { 6 | bool normalizeLightning = true; 7 | //Maximum vertical distance to the first pixel from carY 8 | int firstFragmentMaxDist = 30;//15-60 9 | //How many pixels to iterate to the left, for each pixel 10 | int leftIterationLength = 5;//1-15 11 | //How many pixels to iterate to the right, for each pixel 12 | int rightIterationLength = 8;//1-15 13 | //How many pixels of the transform border to remove from the canny 14 | int transformLineRemovalThreshold = 18; 15 | // If the middle line should be taken into consideration or not 16 | bool useLeftLine = true; 17 | // How much less to iterate right and left when finding the first point 18 | float iterateReduceOnStart = -2.f; 19 | // Every pixel in a line can not have an angle from the previous pixel that deviates more than this 20 | float maxAngleDiff = 0.8f; // 0.4 - 1.4 21 | // N Frames to take the mean value from 22 | uint smoothening = 0; // 0 - 8v 23 | 24 | // PID SETTINGS 25 | float kp = 0.5; 26 | float ki = 0.0; 27 | float kd = 0.0; 28 | } 29 | } 30 | 31 | -------------------------------------------------------------------------------- /apps/AutodriveSim/Autodrive/README.md: -------------------------------------------------------------------------------- 1 | # AUTODRIVE 2 | Core logic of Pegasus autonomous android car 3 | 4 | ![Alt text](Diagram.png?raw=true) 5 | 6 | ### Related repos: 7 | [Android Car Duino - ANDROID APP](https://github.com/Petroula/Android-Car-duino) 8 | -------------------------------------------------------------------------------- /apps/AutodriveSim/Autodrive/Sample/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8) 2 | project( Sample ) 3 | SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wno-deprecated -Wall -Werror -Wextra -Wfloat-equal -Wshadow -Wpointer-arith -Wwrite-strings -Wpacked -pipe") 4 | find_package(OpenCV REQUIRED) 5 | include_directories(${OpenCV_INCLUDE_DIRS}) 6 | add_executable(Sample main.cpp) 7 | target_link_libraries( Sample ${OpenCV_LIBS} ) 8 | -------------------------------------------------------------------------------- /apps/AutodriveSim/Autodrive/Sample/main.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #define _USE_MATH_DEFINES 5 | #include 6 | 7 | #define _AUTODRIVE_SHOWCANNY 8 | #define _AUTODRIVE_SHOWHOUGH 9 | 10 | #undef _DEBUG 11 | #include "../Include/imageprocessor/imageprocessor.hpp" 12 | 13 | using namespace cv; 14 | using namespace std; 15 | 16 | int main() 17 | { 18 | std::cout<<"main"; 19 | string filename = "testreal_small.mp4"; 20 | //string filename = "vid1.mp4"; 21 | //string filename = "Test4-1.m4v"; 22 | VideoCapture capture(filename); 23 | Mat frame; 24 | 25 | if (!capture.isOpened()) 26 | throw "Error when opening test4.avi"; 27 | string window = "w"; 28 | namedWindow(window, 1); 29 | 30 | capture >> frame; 31 | while (!Autodrive::imageProcessor::init_processing(&frame)){ 32 | capture >> frame; 33 | } 34 | for (;;) 35 | { 36 | capture >> frame; 37 | if (frame.empty()){ 38 | capture.open(filename); 39 | continue; 40 | } 41 | 42 | Autodrive::imageProcessor::continue_processing(frame); 43 | 44 | Autodrive::show_image(frame, 3, "w"); 45 | waitKey(10); // waits to display frame 46 | } 47 | return 0; 48 | } 49 | -------------------------------------------------------------------------------- /apps/AutodriveSim/Autodrive/Sample/testdrive.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/apps/AutodriveSim/Autodrive/Sample/testdrive.mp4 -------------------------------------------------------------------------------- /apps/AutodriveSim/Autodrive/Sample/testreal_small.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/apps/AutodriveSim/Autodrive/Sample/testreal_small.mp4 -------------------------------------------------------------------------------- /apps/AutodriveSim/apps/MainModule.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * lanedetector - Sample application for detecting lane markings. 3 | * Copyright (C) 2012 - 2015 Christian Berger 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "AutodriveSim.hpp" 21 | 22 | int32_t main(int32_t argc, char **argv) { 23 | msv::AutodriveSim autoSim(argc, argv); 24 | return autoSim.runModule(); 25 | } 26 | -------------------------------------------------------------------------------- /apps/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # Mini-Smart-Vehicles sources. 2 | # Disable QT and OpenCV apps on platforms missing those libraries. 3 | IF((NOT "${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin") AND (NOT "${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD") AND (NOT WIN32) AND (NOT "${CMAKE_SYSTEM_NAME}" STREQUAL "NetBSD") AND (NOT "${CMAKE_SYSTEM_NAME}" STREQUAL "OpenBSD")) 4 | # Application for receiving data from hesperia or a USB camera. 5 | ADD_SUBDIRECTORY (AutodriveSim) 6 | ENDIF() 7 | 8 | # Special target to simplify the rsync command. 9 | IF("${PANDABOARD}" STREQUAL "YES") 10 | ADD_CUSTOM_TARGET(push2meili-1 11 | # COMMAND rsync -ave ssh /opt/msv-ARM/ meili@192.168.0.100:/opt/msv/ 12 | COMMAND rsync -ave ssh /opt/msv-ARM/ meili@192.168.0.100:/opt/msv/bin/msv 13 | DEPENDS cc-data sensorboard AutodriveSim driver proxy 14 | ) 15 | 16 | ADD_CUSTOM_TARGET(push2meili-2 17 | # COMMAND rsync -ave ssh /opt/msv-ARM/ meili@192.168.0.101:/opt/msv/ 18 | COMMAND rsync -ave ssh /opt/msv-ARM/ meili@192.168.0.101:/opt/msv/bin/msv 19 | DEPENDS cc-data sensorboard AutodriveSim driver proxy 20 | ) 21 | ENDIF("${PANDABOARD}" STREQUAL "YES") 22 | 23 | -------------------------------------------------------------------------------- /autodrive.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | (cd /opt/odv/bin \ 3 | ; ./supercomponent --cid=111 --freq=20 > /dev/null 2>&1 & \ 4 | ./cockpit --cid=111 > /dev/null 2>&1 & \ 5 | ./vehicle --cid=111 --freq=20 > /dev/null 2>&1 & \ 6 | ./camgen --cid=111 --freq=20 > /dev/null 2>&1 & \ 7 | ./irus --cid=111 --freq=20 > /dev/null 2>&1 & \ 8 | ./AutodriveSim --cid=111 --freq=20) 9 | wait 10 | -------------------------------------------------------------------------------- /build.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | ./generateDataStructures.sh 3 | (cd build && cmake -D CMAKE_INSTALL_PREFIX=/opt/odv/ .. && make all && make install) 4 | -------------------------------------------------------------------------------- /build/placeholder: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/build/placeholder -------------------------------------------------------------------------------- /compile.sh: -------------------------------------------------------------------------------- 1 | (cd build && make all && make install) 2 | -------------------------------------------------------------------------------- /generateDataStructures.sh: -------------------------------------------------------------------------------- 1 | #/bin/bash 2 | 3 | GENERATOR=_buildtools/DataStructureGenerator-r9.jar 4 | 5 | java -jar $GENERATOR --withCMake Data.odvd 6 | -------------------------------------------------------------------------------- /hesperia/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # Mini-Smart-Vehicles. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | IF (NOT "${PANDABOARD}" STREQUAL "YES") 8 | # Add subdirectories. 9 | ADD_SUBDIRECTORY (libhesperia) 10 | 11 | # hesperia depends on OpenCV. 12 | SET (OpenCV_LIBS opencv_core opencv_imgproc opencv_highgui) 13 | SET (LIBS ${LIBS} ${OpenCV_LIBS}) 14 | 15 | ADD_SUBDIRECTORY (camgen) 16 | ADD_SUBDIRECTORY (cockpit) 17 | ADD_SUBDIRECTORY (chasecar) 18 | ADD_SUBDIRECTORY (drivenpath) 19 | ADD_SUBDIRECTORY (egocontroller) 20 | ADD_SUBDIRECTORY (irus) 21 | ADD_SUBDIRECTORY (rec2stdout) 22 | ADD_SUBDIRECTORY (vehicle) 23 | 24 | # Installing scenarios and models. 25 | FILE(GLOB SCNX "Scenarios/*.scnx") 26 | INSTALL(FILES ${SCNX} DESTINATION bin/Scenarios) 27 | 28 | FILE(GLOB OBJX "Scenarios/Evaluation/*.scnx") 29 | INSTALL(FILES ${OBJX} DESTINATION bin/Scenarios/Evaluation) 30 | 31 | FILE(GLOB OBJX "Scenarios/Models/*.objx") 32 | INSTALL(FILES ${OBJX} DESTINATION bin/Scenarios/Models) 33 | ENDIF(NOT "${PANDABOARD}" STREQUAL "YES") 34 | 35 | -------------------------------------------------------------------------------- /hesperia/Scenarios/MissingInnerLaneMarking.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/MissingInnerLaneMarking.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/MissingOuterLaneMarking.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/MissingOuterLaneMarking.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/Models/FordEscape.objx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/Models/FordEscape.objx -------------------------------------------------------------------------------- /hesperia/Scenarios/Models/RedRocketCar.objx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/Models/RedRocketCar.objx -------------------------------------------------------------------------------- /hesperia/Scenarios/No-obstacles.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/No-obstacles.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/NoObstacles_NoStopLines.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/NoObstacles_NoStopLines.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/NoObstacles_StopLines.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/NoObstacles_StopLines.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/ObstacleInFirstCurve.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/ObstacleInFirstCurve.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/ObstacleOnStraightRoad.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/ObstacleOnStraightRoad.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/ObstaclesAtIntersections_StopLines.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/ObstaclesAtIntersections_StopLines.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/Overtaking-easy.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/Overtaking-easy.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/Overtaking-hard.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/Overtaking-hard.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/Overtaking-medium.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/Overtaking-medium.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/Parking-easy.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/Parking-easy.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/Parking-hard.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/Parking-hard.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/Parking-medium.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/Parking-medium.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/Parking-sideways.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/Parking-sideways.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/ReferenceAxes.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/ReferenceAxes.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/SEM_Parking_Parallel_Advanced.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/SEM_Parking_Parallel_Advanced.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/SEM_Parking_Parallel_Simple.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/SEM_Parking_Parallel_Simple.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/SEM_Parking_Perpendicular_Advanced.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/SEM_Parking_Perpendicular_Advanced.scnx -------------------------------------------------------------------------------- /hesperia/Scenarios/SEM_Parking_Perpendicular_Simple.scnx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/Scenarios/SEM_Parking_Perpendicular_Simple.scnx -------------------------------------------------------------------------------- /hesperia/camgen/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | PROJECT (camgen) 8 | 9 | SET (LIBS ${LIBS} GL GLU glut) 10 | 11 | # Include directories from core. 12 | INCLUDE_DIRECTORIES (${libopendavinci_SOURCE_DIR}/include) 13 | INCLUDE_DIRECTORIES (${libhesperia_SOURCE_DIR}/include) 14 | INCLUDE_DIRECTORIES (include) 15 | 16 | # Recipe for building "camgen". 17 | FILE(GLOB_RECURSE camgen-sources "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") 18 | ADD_LIBRARY (camgenlib STATIC ${camgen-sources}) 19 | ADD_EXECUTABLE (camgen "${CMAKE_CURRENT_SOURCE_DIR}/apps/camgen.cpp") 20 | TARGET_LINK_LIBRARIES (camgen camgenlib hesperia ${OPENDAVINCI_LIBS} ${LIBS}) 21 | 22 | # Recipe for installing "camgen". 23 | INSTALL(TARGETS camgen RUNTIME DESTINATION bin) 24 | 25 | -------------------------------------------------------------------------------- /hesperia/camgen/apps/camgen.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * camgen - Camera stream generator (part of simulation environment) 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "CamGen.h" 21 | 22 | int32_t main(int32_t argc, char **argv) { 23 | camgen::CamGen cg(argc, argv); 24 | return cg.runModule(); 25 | } 26 | -------------------------------------------------------------------------------- /hesperia/chasecar/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | PROJECT (chasecar) 8 | 9 | SET (LIBS ${LIBS} GL GLU glut) 10 | 11 | # Include directories from core. 12 | INCLUDE_DIRECTORIES (${libopendavinci_SOURCE_DIR}/include) 13 | INCLUDE_DIRECTORIES (${libhesperia_SOURCE_DIR}/include) 14 | INCLUDE_DIRECTORIES (include) 15 | 16 | # Recipe for building "chasecar". 17 | FILE(GLOB_RECURSE chasecar-sources "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") 18 | ADD_LIBRARY (chasecarlib STATIC ${chasecar-sources}) 19 | ADD_EXECUTABLE (chasecar "${CMAKE_CURRENT_SOURCE_DIR}/apps/chasecar.cpp") 20 | TARGET_LINK_LIBRARIES (chasecar chasecarlib hesperia ${OPENDAVINCI_LIBS} ${LIBS}) 21 | 22 | # Recipe for installing "chasecar". 23 | INSTALL(TARGETS chasecar RUNTIME DESTINATION bin) 24 | 25 | -------------------------------------------------------------------------------- /hesperia/chasecar/apps/chasecar.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * chasecar - Render video from chasing the ego car 3 | * Copyright (C) 2012 - 2015 Christian Berger 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "ChaseCar.h" 21 | 22 | int32_t main(int32_t argc, char **argv) { 23 | chasecar::ChaseCar cc(argc, argv); 24 | return cc.runModule(); 25 | } 26 | -------------------------------------------------------------------------------- /hesperia/cockpit/apps/MainModule.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * cockpit - Visualization environment 3 | * Copyright (C) 2012 - 2015 Christian Berger 4 | * Copyright (C) 2008 - 2011 (as monitor component) Christian Berger, Bernhard Rumpe 5 | * 6 | * This program is free software; you can redistribute it and/or 7 | * modify it under the terms of the GNU General Public License 8 | * as published by the Free Software Foundation; either version 2 9 | * of the License, or (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 19 | */ 20 | 21 | #include "Cockpit.h" 22 | 23 | int32_t main(int32_t argc, char **argv) { 24 | cockpit::Cockpit cp(argc, argv); 25 | return cp.runModule(); 26 | } 27 | -------------------------------------------------------------------------------- /hesperia/cockpit/src/ContainerObserver.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * cockpit - Visualization environment 3 | * Copyright (C) 2012 - 2015 Christian Berger 4 | * Copyright (C) 2008 - 2011 (as monitor component) Christian Berger, Bernhard Rumpe 5 | * 6 | * This program is free software; you can redistribute it and/or 7 | * modify it under the terms of the GNU General Public License 8 | * as published by the Free Software Foundation; either version 2 9 | * of the License, or (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 19 | */ 20 | 21 | #ifdef PANDABOARD 22 | #include 23 | #endif 24 | 25 | #include "ContainerObserver.h" 26 | 27 | namespace cockpit { 28 | 29 | ContainerObserver::~ContainerObserver() {} 30 | 31 | } // cockpit 32 | -------------------------------------------------------------------------------- /hesperia/cockpit/src/plugins/birdseyemap/CameraAssignableNodesListener.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * cockpit - Visualization environment 3 | * Copyright (C) 2012 - 2015 Christian Berger 4 | * Copyright (C) 2008 - 2011 (as monitor component) Christian Berger, Bernhard Rumpe 5 | * 6 | * This program is free software; you can redistribute it and/or 7 | * modify it under the terms of the GNU General Public License 8 | * as published by the Free Software Foundation; either version 2 9 | * of the License, or (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 19 | */ 20 | 21 | #include "plugins/birdseyemap/CameraAssignableNodesListener.h" 22 | 23 | namespace cockpit { 24 | namespace plugins { 25 | namespace birdseyemap { 26 | 27 | CameraAssignableNodesListener::~CameraAssignableNodesListener() {} 28 | 29 | } 30 | } 31 | } // cockpit::plugins::birdseyemap 32 | -------------------------------------------------------------------------------- /hesperia/cockpit/src/plugins/birdseyemap/SelectableNodeDescriptorTreeListener.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * cockpit - Visualization environment 3 | * Copyright (C) 2012 - 2015 Christian Berger 4 | * Copyright (C) 2008 - 2011 (as monitor component) Christian Berger, Bernhard Rumpe 5 | * 6 | * This program is free software; you can redistribute it and/or 7 | * modify it under the terms of the GNU General Public License 8 | * as published by the Free Software Foundation; either version 2 9 | * of the License, or (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 19 | */ 20 | 21 | #include "plugins/birdseyemap/SelectableNodeDescriptorTreeListener.h" 22 | 23 | namespace cockpit { 24 | namespace plugins { 25 | namespace birdseyemap { 26 | 27 | SelectableNodeDescriptorTreeListener::~SelectableNodeDescriptorTreeListener() {} 28 | 29 | } 30 | } 31 | } // plugins::birdseyemap 32 | -------------------------------------------------------------------------------- /hesperia/cockpit/src/plugins/environmentviewer/CameraAssignableNodesListener.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * cockpit - Visualization environment 3 | * Copyright (C) 2012 - 2015 Christian Berger 4 | * Copyright (C) 2008 - 2011 (as monitor component) Christian Berger, Bernhard Rumpe 5 | * 6 | * This program is free software; you can redistribute it and/or 7 | * modify it under the terms of the GNU General Public License 8 | * as published by the Free Software Foundation; either version 2 9 | * of the License, or (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 19 | */ 20 | 21 | #include "plugins/environmentviewer/CameraAssignableNodesListener.h" 22 | 23 | namespace cockpit { 24 | namespace plugins { 25 | namespace environmentviewer { 26 | 27 | CameraAssignableNodesListener::~CameraAssignableNodesListener() {} 28 | 29 | } 30 | } 31 | } // cockpit::plugins::environmentviewer 32 | -------------------------------------------------------------------------------- /hesperia/cockpit/src/plugins/environmentviewer/SelectableNodeDescriptorTreeListener.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * cockpit - Visualization environment 3 | * Copyright (C) 2012 - 2015 Christian Berger 4 | * Copyright (C) 2008 - 2011 (as monitor component) Christian Berger, Bernhard Rumpe 5 | * 6 | * This program is free software; you can redistribute it and/or 7 | * modify it under the terms of the GNU General Public License 8 | * as published by the Free Software Foundation; either version 2 9 | * of the License, or (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 19 | */ 20 | 21 | #include "plugins/environmentviewer/SelectableNodeDescriptorTreeListener.h" 22 | 23 | namespace cockpit { 24 | namespace plugins { 25 | namespace environmentviewer { 26 | 27 | SelectableNodeDescriptorTreeListener::~SelectableNodeDescriptorTreeListener() {} 28 | 29 | } 30 | } 31 | } // plugins::environmentviewer 32 | -------------------------------------------------------------------------------- /hesperia/drivenpath/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | PROJECT (drivenpath) 8 | 9 | # Include directories from core. 10 | INCLUDE_DIRECTORIES (${libopendavinci_SOURCE_DIR}/include) 11 | INCLUDE_DIRECTORIES (${libhesperia_SOURCE_DIR}/include) 12 | INCLUDE_DIRECTORIES (include) 13 | 14 | # Recipe for building "drivenpath". 15 | FILE(GLOB_RECURSE drivenpath-sources "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") 16 | ADD_LIBRARY (drivenpathlib STATIC ${drivenpath-sources}) 17 | ADD_EXECUTABLE (drivenpath "${CMAKE_CURRENT_SOURCE_DIR}/apps/drivenpath.cpp") 18 | TARGET_LINK_LIBRARIES (drivenpath drivenpathlib hesperia ${OPENDAVINCI_LIBS} ${LIBS}) 19 | 20 | # Recipe for installing "drivenpath". 21 | INSTALL(TARGETS drivenpath RUNTIME DESTINATION bin) 22 | 23 | -------------------------------------------------------------------------------- /hesperia/drivenpath/apps/drivenpath.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * drivenpath - Export driven path (part of simulation environment) 3 | * Copyright (C) 2012 - 2015 Christian Berger 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "DrivenPath.h" 21 | 22 | int32_t main(int32_t argc, char **argv) { 23 | measurements::DrivenPath dp(argc, argv); 24 | return dp.runModule(); 25 | } 26 | -------------------------------------------------------------------------------- /hesperia/egocontroller/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | PROJECT (egocontroller) 8 | 9 | # Include directories from core. 10 | INCLUDE_DIRECTORIES (${libopendavinci_SOURCE_DIR}/include) 11 | INCLUDE_DIRECTORIES (${libhesperia_SOURCE_DIR}/include) 12 | INCLUDE_DIRECTORIES (include) 13 | 14 | # Recipe for building "egocontroller". 15 | FILE(GLOB_RECURSE egocontroller-sources "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") 16 | ADD_LIBRARY (egocontrollerlib STATIC ${egocontroller-sources}) 17 | ADD_EXECUTABLE (egocontroller "${CMAKE_CURRENT_SOURCE_DIR}/apps/egocontroller.cpp") 18 | TARGET_LINK_LIBRARIES (egocontroller egocontrollerlib hesperia ${OPENDAVINCI_LIBS} ${LIBS}) 19 | 20 | # Recipe for installing "egocontroller". 21 | INSTALL(TARGETS egocontroller RUNTIME DESTINATION bin) 22 | 23 | -------------------------------------------------------------------------------- /hesperia/egocontroller/apps/egocontroller.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * egocontroller - Manual control of the vehicle (part of simulation environment) 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "EgoController.h" 21 | 22 | int main(int argc, char **argv) { 23 | egocontroller::EgoController controller(argc, argv); 24 | return controller.runModule(); 25 | } 26 | -------------------------------------------------------------------------------- /hesperia/egocontroller/include/Controller.h: -------------------------------------------------------------------------------- 1 | /** 2 | * egocontroller - Manual control of the vehicle (part of simulation environment) 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #ifndef EGOCONTROLLER_CONTROLLER_H_ 21 | #define EGOCONTROLLER_CONTROLLER_H_ 22 | 23 | #include "hesperia/data/environment/EgoState.h" 24 | 25 | namespace egocontroller { 26 | 27 | using namespace std; 28 | 29 | class Controller 30 | { 31 | public: 32 | Controller(); 33 | virtual ~Controller(); 34 | 35 | virtual void doWork() = 0; 36 | virtual hesperia::data::environment::EgoState getEgoState() = 0; 37 | }; 38 | } 39 | 40 | #endif // EGOCONTROLLER_CONTROLLER_H_ 41 | -------------------------------------------------------------------------------- /hesperia/egocontroller/src/ControlBehaviour.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * egocontroller - Manual control of the vehicle (part of simulation environment) 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "ControlBehaviour.h" 21 | 22 | namespace egocontroller { 23 | 24 | ControlBehaviour::ControlBehaviour() 25 | {} 26 | 27 | ControlBehaviour::~ControlBehaviour() 28 | {} 29 | 30 | } 31 | -------------------------------------------------------------------------------- /hesperia/egocontroller/src/Controller.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * egocontroller - Manual control of the vehicle (part of simulation environment) 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | #include "Controller.h" 20 | 21 | namespace egocontroller { 22 | 23 | Controller::Controller() 24 | {} 25 | 26 | Controller::~Controller() 27 | {} 28 | 29 | } 30 | -------------------------------------------------------------------------------- /hesperia/irus/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | PROJECT (irus) 8 | 9 | # Include directories from core. 10 | INCLUDE_DIRECTORIES (${libopendavinci_SOURCE_DIR}/include) 11 | INCLUDE_DIRECTORIES (${libdata_SOURCE_DIR}/include) 12 | INCLUDE_DIRECTORIES (${libhesperia_SOURCE_DIR}/include) 13 | INCLUDE_DIRECTORIES (include) 14 | 15 | # Recipe for building "irus". 16 | FILE(GLOB_RECURSE irus-sources "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") 17 | ADD_LIBRARY (iruslib STATIC ${irus-sources}) 18 | ADD_EXECUTABLE (irus "${CMAKE_CURRENT_SOURCE_DIR}/apps/irus.cpp") 19 | TARGET_LINK_LIBRARIES (irus iruslib hesperia ${DATA_LIBS} ${OPENDAVINCI_LIBS} ${LIBS}) 20 | 21 | # Recipe for installing "irus". 22 | INSTALL(TARGETS irus RUNTIME DESTINATION bin) 23 | 24 | -------------------------------------------------------------------------------- /hesperia/irus/apps/irus.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * irus - Distance data generator (part of simulation environment) 3 | * Copyright (C) 2012 - 2015 Christian Berger 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "IRUS.h" 21 | 22 | int32_t main(int32_t argc, char **argv) { 23 | irus::IRUS sensors(argc, argv); 24 | return sensors.runModule(); 25 | } 26 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/core/wrapper/Image.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "core/wrapper/Image.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | Image::~Image() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/core/wrapper/Matrix.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "core/wrapper/Matrix.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | Matrix::~Matrix() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/core/wrapper/graph/Edge.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "core/wrapper/graph/Edge.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | namespace graph { 25 | 26 | Edge::~Edge() {} 27 | 28 | } 29 | } 30 | } // core::wrapper::graph 31 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/core/wrapper/graph/Vertex.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "core/wrapper/graph/Vertex.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | namespace graph { 25 | 26 | Vertex::~Vertex() {} 27 | 28 | } 29 | } 30 | } // core::wrapper::graph 31 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/core/wrapper/parser/ASTVisitor.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "core/wrapper/parser/ASTVisitor.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | namespace parser { 25 | 26 | ASTVisitor::~ASTVisitor() {} 27 | 28 | } 29 | } 30 | } // core::wrapper::parser 31 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/core/wrapper/parser/ParserErrorListener.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "core/wrapper/parser/ParserErrorListener.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | namespace parser { 25 | 26 | ParserErrorListener::~ParserErrorListener() {} 27 | 28 | } 29 | } 30 | } // core::wrapper::parser 31 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/core/wrapper/parser/ParserTokenExtendedData.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "core/wrapper/parser/ParserTokenExtendedData.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | namespace parser { 25 | 26 | ParserTokenExtendedData::~ParserTokenExtendedData() {} 27 | 28 | } 29 | } 30 | } // core::wrapper::parser 31 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/core/wrapper/parser/ParserTokenListener.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "core/wrapper/parser/ParserTokenListener.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | namespace parser { 25 | 26 | ParserTokenListener::~ParserTokenListener() {} 27 | 28 | } 29 | } 30 | } // core::wrapper::parser 31 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/data/scenario/ScenarioNode.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "hesperia/data/scenario/ScenarioNode.h" 21 | 22 | namespace hesperia { 23 | namespace data { 24 | namespace scenario { 25 | 26 | ScenarioNode::~ScenarioNode() {} 27 | 28 | } 29 | } 30 | } // core::data::scenario 31 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/data/scenario/ScenarioVisitor.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "hesperia/data/scenario/ScenarioVisitor.h" 21 | 22 | namespace hesperia { 23 | namespace data { 24 | namespace scenario { 25 | 26 | ScenarioVisitor::~ScenarioVisitor() {} 27 | 28 | } 29 | } 30 | } // hesperia::data::scenario 31 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/data/situation/SituationNode.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "hesperia/data/situation/SituationNode.h" 21 | 22 | namespace hesperia { 23 | namespace data { 24 | namespace situation { 25 | 26 | SituationNode::~SituationNode() {} 27 | 28 | } 29 | } 30 | } // hesperia::data::situation 31 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/data/situation/SituationVisitor.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "hesperia/data/situation/SituationVisitor.h" 21 | 22 | namespace hesperia { 23 | namespace data { 24 | namespace situation { 25 | 26 | SituationVisitor::~SituationVisitor() {} 27 | 28 | } 29 | } 30 | } // hesperia::data::situation 31 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/decorator/Renderer.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "hesperia/decorator/Renderer.h" 21 | 22 | namespace hesperia { 23 | namespace decorator { 24 | 25 | using namespace std; 26 | 27 | Renderer::Renderer() {} 28 | 29 | Renderer::~Renderer() {} 30 | 31 | } 32 | } // hesperia::decorator 33 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/scenegraph/SceneNodeVisitor.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "hesperia/scenegraph/SceneNodeVisitor.h" 21 | 22 | namespace hesperia { 23 | namespace scenegraph { 24 | 25 | SceneNodeVisitor::~SceneNodeVisitor() {} 26 | 27 | } 28 | } // hesperia::scenegraph 29 | 30 | -------------------------------------------------------------------------------- /hesperia/libhesperia/src/threeD/TransformGroupVisitor.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * hesperia - Simulation environment 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "hesperia/threeD/TransformGroupVisitor.h" 21 | 22 | namespace hesperia { 23 | namespace threeD { 24 | 25 | TransformGroupVisitor::~TransformGroupVisitor() {} 26 | 27 | } 28 | } // hesperia::threeD 29 | -------------------------------------------------------------------------------- /hesperia/libhesperia/testsuites/TestImage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/hesperia/libhesperia/testsuites/TestImage.png -------------------------------------------------------------------------------- /hesperia/rec2stdout/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | PROJECT (rec2stdout) 8 | 9 | # Include directories from core. 10 | INCLUDE_DIRECTORIES (${libopendavinci_SOURCE_DIR}/include) 11 | INCLUDE_DIRECTORIES (${libhesperia_SOURCE_DIR}/include) 12 | INCLUDE_DIRECTORIES (include) 13 | 14 | # Recipe for building "rec2stdout". 15 | FILE(GLOB_RECURSE rec2stdout-sources "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") 16 | ADD_LIBRARY (rec2stdoutlib STATIC ${rec2stdout-sources}) 17 | ADD_EXECUTABLE (rec2stdout "${CMAKE_CURRENT_SOURCE_DIR}/apps/rec2stdout.cpp") 18 | TARGET_LINK_LIBRARIES (rec2stdout rec2stdoutlib hesperia ${OPENDAVINCI_LIBS} ${LIBS}) 19 | 20 | # Recipe for installing "rec2stdout". 21 | INSTALL(TARGETS rec2stdout RUNTIME DESTINATION bin) 22 | 23 | -------------------------------------------------------------------------------- /hesperia/rec2stdout/apps/rec2stdout.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * rec2stdout - Dump the content of a .rec file to console (part of simulation environment) 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "Rec2Stdout.h" 21 | 22 | int32_t main(int32_t argc, char **argv) { 23 | rec2stdout::Rec2Stdout r(argc, argv); 24 | return r.runModule(); 25 | } 26 | -------------------------------------------------------------------------------- /hesperia/vehicle/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | PROJECT (vehicle) 8 | 9 | # Include directories from core. 10 | INCLUDE_DIRECTORIES (${libopendavinci_SOURCE_DIR}/include) 11 | INCLUDE_DIRECTORIES (${libhesperia_SOURCE_DIR}/include) 12 | INCLUDE_DIRECTORIES (include) 13 | 14 | # Recipe for building "vehicle". 15 | FILE(GLOB_RECURSE vehicle-sources "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") 16 | ADD_LIBRARY (vehiclelib STATIC ${vehicle-sources}) 17 | ADD_EXECUTABLE (vehicle "${CMAKE_CURRENT_SOURCE_DIR}/apps/vehicle.cpp") 18 | TARGET_LINK_LIBRARIES (vehicle vehiclelib hesperia ${OPENDAVINCI_LIBS} ${LIBS}) 19 | 20 | # Recipe for installing "vehicle". 21 | INSTALL(TARGETS vehicle RUNTIME DESTINATION bin) 22 | 23 | -------------------------------------------------------------------------------- /hesperia/vehicle/apps/vehicle.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * vehicle - Vehicle dynamics (part of simulation environment) 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "Vehicle.h" 21 | 22 | int32_t main(int32_t argc, char **argv) { 23 | vehicle::Vehicle v(argc, argv); 24 | return v.runModule(); 25 | } 26 | -------------------------------------------------------------------------------- /libdata/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # This software is open source. Please see COPYING and AUTHORS for further information. 3 | # 4 | PROJECT (libdata) 5 | # Include directories from core. 6 | INCLUDE_DIRECTORIES (${libopendavinci_SOURCE_DIR}/include) 7 | INCLUDE_DIRECTORIES (include) 8 | # Recipe for building libdata. 9 | FILE(GLOB_RECURSE libdata-sources "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") 10 | ADD_LIBRARY (data STATIC ${libdata-sources}) 11 | # Recipe for installing libdata. 12 | INSTALL(TARGETS data DESTINATION lib) 13 | # Install header files. 14 | INSTALL(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/include/" DESTINATION include/libdata) 15 | IF(CXXTEST_FOUND) 16 | FILE(GLOB libdata-testsuites "${CMAKE_CURRENT_SOURCE_DIR}/testsuites/*.h") 17 | FOREACH(testsuite ${libdata-testsuites}) 18 | STRING(REPLACE "/" ";" testsuite-list ${testsuite}) 19 | LIST(LENGTH testsuite-list len) 20 | MATH(EXPR lastItem "${len}-1") 21 | LIST(GET testsuite-list "${lastItem}" testsuite-short) 22 | CXXTEST_ADD_TEST(${testsuite-short}-TestSuite ${testsuite-short}-TestSuite.cpp ${testsuite}) 23 | TARGET_LINK_LIBRARIES(${testsuite-short}-TestSuite data ${OPENDAVINCI_LIBS} ${LIBS}) 24 | ENDFOREACH() 25 | ENDIF(CXXTEST_FOUND) 26 | -------------------------------------------------------------------------------- /libdata/include/GeneratedHeaders_Data.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This software is open source. Please see COPYING and AUTHORS for further information. 3 | * 4 | * THIS IS A GENERATED FILE - CHANGES WILL BE OVERWRITTEN. 5 | */ 6 | 7 | #include "generated/msv/SteeringData.h" 8 | #include "generated/msv/UserButtonData.h" 9 | #include "generated/msv/SensorBoardData.h" 10 | -------------------------------------------------------------------------------- /libopendavinci/include/core/wrapper/NetworkLibraryProducts.h: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #ifndef OPENDAVINCI_CORE_WRAPPER_NETWORKLIBRARYPRODUCTS_H_ 21 | #define OPENDAVINCI_CORE_WRAPPER_NETWORKLIBRARYPRODUCTS_H_ 22 | 23 | namespace core { 24 | namespace wrapper { 25 | 26 | enum NetworkLibraryProducts 27 | { 28 | NetworkLibraryPosix, 29 | NetworkLibraryWin32 30 | }; 31 | 32 | } 33 | } // core::wrapper 34 | 35 | #endif /*OPENDAVINCI_CORE_WRAPPER_NETWORKLIBRARYPRODUCTS_H_*/ 36 | -------------------------------------------------------------------------------- /libopendavinci/include/core/wrapper/SerialPortLibraryProducts.h: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #ifndef OPENDAVINCI_CORE_WRAPPER_SERIALPORTSLIBRARYPRODUCTS_H_ 21 | #define OPENDAVINCI_CORE_WRAPPER_SERIALPORTSLIBRARYPRODUCTS_H_ 22 | 23 | namespace core { 24 | namespace wrapper { 25 | 26 | enum SerialPortLibraryProducts 27 | { 28 | SerialPortLibraryPosix, 29 | SerialPortLibraryWin32 30 | }; 31 | 32 | } 33 | } // core::wrapper 34 | 35 | #endif /*OPENDAVINCI_CORE_WRAPPER_SERIALPORTSLIBRARYPRODUCTS_H_*/ 36 | -------------------------------------------------------------------------------- /libopendavinci/include/core/wrapper/SystemLibraryProducts.h: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #ifndef OPENDAVINCI_CORE_WRAPPER_SYSTEMLIBRARYPRODUCTS_H_ 21 | #define OPENDAVINCI_CORE_WRAPPER_SYSTEMLIBRARYPRODUCTS_H_ 22 | 23 | namespace core { 24 | namespace wrapper { 25 | 26 | enum SystemLibraryProducts 27 | { 28 | SystemLibraryPosix, 29 | SystemLibraryWin32 30 | }; 31 | 32 | } 33 | } // core::wrapper 34 | 35 | #endif /*OPENDAVINCI_CORE_WRAPPER_SYSTEMLIBRARYPRODUCTS_H_*/ 36 | -------------------------------------------------------------------------------- /libopendavinci/src/context/base/ControlledContainerConference.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "context/base/ControlledContainerConference.h" 21 | 22 | namespace context { 23 | namespace base { 24 | 25 | ControlledContainerConference::~ControlledContainerConference() {} 26 | 27 | } 28 | } // context::base 29 | -------------------------------------------------------------------------------- /libopendavinci/src/context/base/RuntimeControltInterface.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "context/base/RuntimeControlInterface.h" 21 | 22 | namespace context { 23 | namespace base { 24 | 25 | RuntimeControlInterface::~RuntimeControlInterface() {} 26 | 27 | } 28 | } // context::base 29 | -------------------------------------------------------------------------------- /libopendavinci/src/context/base/SendContainerToSystemsUnderTest.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "context/base/SendContainerToSystemsUnderTest.h" 21 | 22 | namespace context { 23 | namespace base { 24 | 25 | SendContainerToSystemsUnderTest::~SendContainerToSystemsUnderTest() {} 26 | 27 | } 28 | } // context::base 29 | -------------------------------------------------------------------------------- /libopendavinci/src/context/base/SystemFeedbackComponent.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "context/base/SystemFeedbackComponent.h" 21 | 22 | namespace context { 23 | namespace base { 24 | 25 | SystemFeedbackComponent::~SystemFeedbackComponent() {} 26 | 27 | } 28 | } // context::base 29 | -------------------------------------------------------------------------------- /libopendavinci/src/context/base/SystemReportingComponent.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "context/base/SystemReportingComponent.h" 21 | 22 | namespace context { 23 | namespace base { 24 | 25 | SystemReportingComponent::SystemReportingComponent() {} 26 | 27 | SystemReportingComponent::~SystemReportingComponent() {} 28 | 29 | float SystemReportingComponent::getFrequency() const { 30 | return 0; 31 | } 32 | 33 | } 34 | } // context::base 35 | -------------------------------------------------------------------------------- /libopendavinci/src/core/base/Breakpoint.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/base/Breakpoint.h" 21 | 22 | namespace core { 23 | namespace base { 24 | 25 | Breakpoint::~Breakpoint() {} 26 | 27 | } 28 | } // core::base 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/base/DataStoreManager.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/base/DataStoreManager.h" 21 | 22 | namespace core { 23 | namespace base { 24 | 25 | DataStoreManager::~DataStoreManager() {} 26 | 27 | } 28 | } // core::base 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/base/Lock.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/base/Lock.h" 21 | 22 | namespace core { 23 | namespace base { 24 | 25 | Lock::Lock(Mutex &mutex) : 26 | m_mutex(mutex) { 27 | m_mutex.lock(); 28 | } 29 | 30 | Lock::~Lock() { 31 | m_mutex.unlock(); 32 | } 33 | 34 | } 35 | } // core::base 36 | -------------------------------------------------------------------------------- /libopendavinci/src/core/base/Periodic.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/base/Periodic.h" 21 | 22 | namespace core { 23 | namespace base { 24 | 25 | using namespace std; 26 | 27 | Periodic::~Periodic() {} 28 | 29 | } 30 | } // core::base 31 | -------------------------------------------------------------------------------- /libopendavinci/src/core/base/Serializable.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/base/Serializable.h" 21 | 22 | namespace core { 23 | namespace base { 24 | 25 | Serializable::~Serializable() {} 26 | 27 | } 28 | } // core::base 29 | 30 | namespace std { 31 | 32 | ostream &operator<<(ostream &out, const core::base::Serializable &s) { 33 | return s.operator << (out); 34 | } 35 | 36 | istream &operator>>(istream &in, core::base::Serializable &s) { 37 | return s.operator >> (in); 38 | } 39 | 40 | } 41 | -------------------------------------------------------------------------------- /libopendavinci/src/core/base/Thread.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/base/Thread.h" 21 | #include "core/wrapper/ConcurrencyFactory.h" 22 | 23 | namespace core { 24 | namespace base { 25 | 26 | void Thread::usleep(const long µseconds) { 27 | if (microseconds > 0) { 28 | wrapper::ConcurrencyFactory::usleep(microseconds); 29 | } 30 | } 31 | 32 | } 33 | } // core::base 34 | -------------------------------------------------------------------------------- /libopendavinci/src/core/data/Constants.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/data/Constants.h" 21 | 22 | namespace core { 23 | namespace data { 24 | 25 | const double Constants::PI = 3.141592654; 26 | const double Constants::DEG2RAD = (3.141592654 / 180.0); 27 | const double Constants::RAD2DEG = (1.0 / Constants::DEG2RAD); 28 | const double Constants::MS2KMH = 3.6; 29 | const double Constants::KMH2MS = (1.0 / Constants::MS2KMH); 30 | const double Constants::G = 9.81; 31 | 32 | } 33 | } // core::data 34 | -------------------------------------------------------------------------------- /libopendavinci/src/core/data/SerializableData.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/data/SerializableData.h" 21 | 22 | namespace core { 23 | namespace data { 24 | 25 | SerializableData::SerializableData() {} 26 | 27 | SerializableData::~SerializableData() {} 28 | 29 | } 30 | } // core::data 31 | -------------------------------------------------------------------------------- /libopendavinci/src/core/io/ContainerListener.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/io/ContainerListener.h" 21 | 22 | namespace core { 23 | namespace io { 24 | 25 | ContainerListener::~ContainerListener() {} 26 | 27 | } 28 | } // core::io 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/io/ContainerObserver.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/io/ContainerObserver.h" 21 | 22 | namespace core { 23 | namespace io { 24 | 25 | ContainerObserver::~ContainerObserver() {} 26 | 27 | } 28 | } // core::io 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/Condition.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/Condition.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | Condition::~Condition() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/ConnectionListener.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/ConnectionListener.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | using namespace std; 26 | 27 | ConnectionListener::~ConnectionListener() {} 28 | 29 | } 30 | } // core::wrapper 31 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/ConnectionObserver.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/ConnectionObserver.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | ConnectionObserver::~ConnectionObserver() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/DecompressedData.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/DecompressedData.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | DecompressedData::~DecompressedData() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/Disposable.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/Disposable.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | Disposable::~Disposable() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/KeyValueDatabase.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/KeyValueDatabase.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | KeyValueDatabase::~KeyValueDatabase() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/Mutex.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/Mutex.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | Mutex::~Mutex() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/PacketListener.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/PacketListener.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | PacketListener::~PacketListener() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/PacketObserver.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/PacketObserver.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | PacketObserver::~PacketObserver() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/PartialStringReceiver.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/PartialStringReceiver.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | PartialStringReceiver::~PartialStringReceiver() {} 26 | 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/Runnable.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/Runnable.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | Runnable::~Runnable() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/SharedMemory.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/SharedMemory.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | SharedMemory::~SharedMemory() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/StringListener.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/StringListener.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | StringListener::~StringListener() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/StringObserver.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/StringObserver.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | StringObserver::~StringObserver() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/StringSender.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/StringSender.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | StringSender::~StringSender() {} 26 | 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/Thread.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/Thread.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | Thread::~Thread() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/Time.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/Time.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | Time::~Time() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libopendavinci/src/core/wrapper/UDPSender.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * OpenDaVINCI - Portable middleware for distributed components. 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This library is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU Lesser General Public 7 | * License as published by the Free Software Foundation; either 8 | * version 2.1 of the License, or (at your option) any later version. 9 | * 10 | * This library is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 | * Lesser General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU Lesser General Public 16 | * License along with this library; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | */ 19 | 20 | #include "core/wrapper/UDPSender.h" 21 | 22 | namespace core { 23 | namespace wrapper { 24 | 25 | UDPSender::~UDPSender() {} 26 | 27 | } 28 | } // core::wrapper 29 | -------------------------------------------------------------------------------- /libvehiclecontext/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | PROJECT (libvehiclecontext) 8 | 9 | IF (NOT "${PANDABOARD}" STREQUAL "YES") 10 | # Set include directories (config.h is generated to ${CMAKE_CURRENT_BINARY_DIR}/include/core"). 11 | INCLUDE_DIRECTORIES (${libopendavinci_BINARY_DIR}/include) 12 | 13 | INCLUDE_DIRECTORIES (${libopendavinci_SOURCE_DIR}/include) 14 | INCLUDE_DIRECTORIES (${libhesperia_SOURCE_DIR}/include) 15 | INCLUDE_DIRECTORIES (${libdata_SOURCE_DIR}/include) 16 | INCLUDE_DIRECTORIES (include) 17 | 18 | # Recipe for building "vehiclecontext". 19 | FILE(GLOB_RECURSE libvehiclecontext-sources "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") 20 | ADD_LIBRARY (vehiclecontext STATIC ${libvehiclecontext-sources}) 21 | TARGET_LINK_LIBRARIES (vehiclecontext hesperia ${DATA_LIBS} ${OPENDAVINCI_LIBS} ${LIBS}) 22 | ENDIF(NOT "${PANDABOARD}" STREQUAL "YES") 23 | 24 | -------------------------------------------------------------------------------- /pull_Autodrive.sh: -------------------------------------------------------------------------------- 1 | ./add_remote_Autodrive.sh 2 | git fetch Autodrive 3 | git subtree pull --prefix apps/AutodriveSim/Autodrive Autodrive master 4 | -------------------------------------------------------------------------------- /push_Autodrive.sh: -------------------------------------------------------------------------------- 1 | ./add_remote_Autodrive.sh 2 | git subtree push --prefix=apps/AutodriveSim/Autodrive Autodrive master 3 | -------------------------------------------------------------------------------- /push_Autodrive_forced.sh: -------------------------------------------------------------------------------- 1 | git push Autodrive `git subtree split --prefix=apps/AutodriveSim/Autodrive/ master`:master --force 2 | -------------------------------------------------------------------------------- /recorder.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # OpenDaVinci Launcher 3 | 4 | FREQ="20" 5 | CID="111" 6 | 7 | cd /opt/odv/bin 8 | 9 | # Start OpenDaVinci components, autodrivesim & the recorder 10 | gnome-terminal --tab --title="supercomponent" -e "./supercomponent --cid="$CID --tab --title="vehicle" -e "./vehicle --cid="$CID" --freq="$FREQ --tab --title="cockpit" -e "./cockpit --cid="$CID --tab --title="camgen" -e "./camgen --cid="$CID" --freq="$FREQ --tab --title="irus" -e "./irus --cid="$CID" --freq="$FREQ --tab --title="AutodriveSim" -e "./AutodriveSim --cid="$CID" --freq="$FREQ --tab --title="Recorder" -e "./recorder --cid="$CID" --freq="$FREQ 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /recordings/parking-easy-group-10.rec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/recordings/parking-easy-group-10.rec -------------------------------------------------------------------------------- /recordings/parking-hard-group-10.rec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/recordings/parking-hard-group-10.rec -------------------------------------------------------------------------------- /recordings/parking-medium-group-10.rec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davjs/AutodriveSim/5e3ffaa6f0ba8394eb6d167af4a32aba87667308/recordings/parking-medium-group-10.rec -------------------------------------------------------------------------------- /supercomponent/apps/supercomponent.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * supercomponent - Configuration and monitoring component for 3 | * distributed software systems 4 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 5 | * 6 | * This program is free software; you can redistribute it and/or 7 | * modify it under the terms of the GNU General Public License 8 | * as published by the Free Software Foundation; either version 2 9 | * of the License, or (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 19 | */ 20 | 21 | #include "SuperComponent.h" 22 | 23 | int main(int argc, char **argv) { 24 | supercomponent::SuperComponent sc(argc, argv); 25 | return sc.runModule(); 26 | } 27 | -------------------------------------------------------------------------------- /tools/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # Mini-Smart-Vehicles. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | # Add subdirectories. 8 | 9 | ADD_SUBDIRECTORY (player) 10 | ADD_SUBDIRECTORY (recintegrity) 11 | ADD_SUBDIRECTORY (recorder) 12 | ADD_SUBDIRECTORY (split) 13 | ADD_SUBDIRECTORY (spy) 14 | 15 | -------------------------------------------------------------------------------- /tools/player/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | PROJECT (player) 8 | 9 | # Include directories from core. 10 | INCLUDE_DIRECTORIES (${libopendavinci_SOURCE_DIR}/include) 11 | INCLUDE_DIRECTORIES (include) 12 | 13 | # Recipe for building "player". 14 | FILE(GLOB_RECURSE player-sources "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") 15 | ADD_LIBRARY (playerlib STATIC ${player-sources}) 16 | ADD_EXECUTABLE (player "${CMAKE_CURRENT_SOURCE_DIR}/apps/player.cpp") 17 | TARGET_LINK_LIBRARIES (player playerlib ${OPENDAVINCI_LIBS} ${LIBS}) 18 | 19 | # Recipe for installing "player". 20 | INSTALL(TARGETS player RUNTIME DESTINATION bin LIBRARY DESTINATION lib) 21 | 22 | # Enable CxxTest for all available testsuites. 23 | IF(CXXTEST_FOUND) 24 | FILE(GLOB player-testsuites "${CMAKE_CURRENT_SOURCE_DIR}/testsuites/*.h") 25 | 26 | FOREACH(testsuite ${player-testsuites}) 27 | STRING(REPLACE "/" ";" testsuite-list ${testsuite}) 28 | 29 | LIST(LENGTH testsuite-list len) 30 | MATH(EXPR lastItem "${len}-1") 31 | LIST(GET testsuite-list "${lastItem}" testsuite-short) 32 | 33 | CXXTEST_ADD_TEST(${testsuite-short}-TestSuite ${testsuite-short}-TestSuite.cpp ${testsuite}) 34 | TARGET_LINK_LIBRARIES(${testsuite-short}-TestSuite playerlib ${OPENDAVINCI_LIBS} ${LIBS}) 35 | ENDFOREACH() 36 | ENDIF(CXXTEST_FOUND) 37 | -------------------------------------------------------------------------------- /tools/player/apps/player.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * player - Tool for playing back recorded data 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "PlayerModule.h" 21 | 22 | int32_t main(int32_t argc, char **argv) { 23 | player::PlayerModule pm(argc, argv); 24 | return pm.runModule(); 25 | } 26 | -------------------------------------------------------------------------------- /tools/recintegrity/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | PROJECT (recintegrity) 8 | 9 | # Include directories from core. 10 | INCLUDE_DIRECTORIES (${libopendavinci_SOURCE_DIR}/include) 11 | INCLUDE_DIRECTORIES (include) 12 | 13 | # Recipe for building "recintegrity". 14 | FILE(GLOB_RECURSE recintegrity-sources "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") 15 | ADD_LIBRARY (recintegritylib STATIC ${recintegrity-sources}) 16 | ADD_EXECUTABLE (recintegrity "${CMAKE_CURRENT_SOURCE_DIR}/apps/recintegrity.cpp") 17 | TARGET_LINK_LIBRARIES (recintegrity recintegritylib ${OPENDAVINCI_LIBS} ${LIBS}) 18 | 19 | # Recipe for installing "recintegrity". 20 | INSTALL(TARGETS recintegrity RUNTIME DESTINATION bin) 21 | 22 | # Enable CxxTest for all available testsuites. 23 | IF(CXXTEST_FOUND) 24 | FILE(GLOB recintegrity-testsuites "${CMAKE_CURRENT_SOURCE_DIR}/testsuites/*.h") 25 | 26 | FOREACH(testsuite ${recintegrity-testsuites}) 27 | STRING(REPLACE "/" ";" testsuite-list ${testsuite}) 28 | 29 | LIST(LENGTH testsuite-list len) 30 | MATH(EXPR lastItem "${len}-1") 31 | LIST(GET testsuite-list "${lastItem}" testsuite-short) 32 | 33 | CXXTEST_ADD_TEST(${testsuite-short}-TestSuite ${testsuite-short}-TestSuite.cpp ${testsuite}) 34 | TARGET_LINK_LIBRARIES(${testsuite-short}-TestSuite recintegritylib ${OPENDAVINCI_LIBS} ${LIBS}) 35 | ENDFOREACH() 36 | ENDIF(CXXTEST_FOUND) 37 | -------------------------------------------------------------------------------- /tools/recintegrity/apps/recintegrity.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * recintegrity - Tool for checking the integrity of recorded data 3 | * Copyright (C) 2014 - 2015 Christian Berger 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "RecIntegrity.h" 21 | 22 | int32_t main(int32_t argc, char **argv) { 23 | recintegrity::RecIntegrity ri(argc, argv); 24 | return ri.runModule(); 25 | } 26 | -------------------------------------------------------------------------------- /tools/recorder/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | PROJECT (recorder) 8 | 9 | # Include directories from core. 10 | INCLUDE_DIRECTORIES (${libopendavinci_SOURCE_DIR}/include) 11 | INCLUDE_DIRECTORIES (include) 12 | 13 | # Recipe for building "recorder". 14 | FILE(GLOB_RECURSE recorder-sources "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") 15 | ADD_LIBRARY (recorderlib STATIC ${recorder-sources}) 16 | ADD_EXECUTABLE (recorder "${CMAKE_CURRENT_SOURCE_DIR}/apps/recorder.cpp") 17 | TARGET_LINK_LIBRARIES (recorder recorderlib ${OPENDAVINCI_LIBS} ${LIBS}) 18 | 19 | # Recipe for installing "recorder". 20 | INSTALL(TARGETS recorder RUNTIME DESTINATION bin) 21 | 22 | # Enable CxxTest for all available testsuites. 23 | IF(CXXTEST_FOUND) 24 | FILE(GLOB recorder-testsuites "${CMAKE_CURRENT_SOURCE_DIR}/testsuites/*.h") 25 | 26 | FOREACH(testsuite ${recorder-testsuites}) 27 | STRING(REPLACE "/" ";" testsuite-list ${testsuite}) 28 | 29 | LIST(LENGTH testsuite-list len) 30 | MATH(EXPR lastItem "${len}-1") 31 | LIST(GET testsuite-list "${lastItem}" testsuite-short) 32 | 33 | CXXTEST_ADD_TEST(${testsuite-short}-TestSuite ${testsuite-short}-TestSuite.cpp ${testsuite}) 34 | TARGET_LINK_LIBRARIES(${testsuite-short}-TestSuite recorderlib ${OPENDAVINCI_LIBS} ${LIBS}) 35 | ENDFOREACH() 36 | ENDIF(CXXTEST_FOUND) 37 | -------------------------------------------------------------------------------- /tools/recorder/apps/recorder.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * recorder - Tool for recording data 3 | * Copyright (C) 2008 - 2015 Christian Berger, Bernhard Rumpe 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "RecorderModule.h" 21 | 22 | int32_t main(int32_t argc, char **argv) { 23 | recorder::RecorderModule r(argc, argv); 24 | return r.runModule(); 25 | } 26 | -------------------------------------------------------------------------------- /tools/split/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | PROJECT (split) 8 | 9 | # Include directories from core. 10 | INCLUDE_DIRECTORIES (${libopendavinci_SOURCE_DIR}/include) 11 | INCLUDE_DIRECTORIES (include) 12 | 13 | # Recipe for building "split". 14 | FILE(GLOB_RECURSE split-sources "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") 15 | ADD_LIBRARY (splitlib STATIC ${split-sources}) 16 | ADD_EXECUTABLE (split "${CMAKE_CURRENT_SOURCE_DIR}/apps/split.cpp") 17 | TARGET_LINK_LIBRARIES (split splitlib ${OPENDAVINCI_LIBS} ${LIBS}) 18 | 19 | # Recipe for installing "split". 20 | INSTALL(TARGETS split RUNTIME DESTINATION bin) 21 | 22 | # Enable CxxTest for all available testsuites. 23 | IF(CXXTEST_FOUND) 24 | FILE(GLOB split-testsuites "${CMAKE_CURRENT_SOURCE_DIR}/testsuites/*.h") 25 | 26 | FOREACH(testsuite ${split-testsuites}) 27 | STRING(REPLACE "/" ";" testsuite-list ${testsuite}) 28 | 29 | LIST(LENGTH testsuite-list len) 30 | MATH(EXPR lastItem "${len}-1") 31 | LIST(GET testsuite-list "${lastItem}" testsuite-short) 32 | 33 | CXXTEST_ADD_TEST(${testsuite-short}-TestSuite ${testsuite-short}-TestSuite.cpp ${testsuite}) 34 | TARGET_LINK_LIBRARIES(${testsuite-short}-TestSuite splitlib ${OPENDAVINCI_LIBS} ${LIBS}) 35 | ENDFOREACH() 36 | ENDIF(CXXTEST_FOUND) 37 | -------------------------------------------------------------------------------- /tools/split/apps/split.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * split- Tool for splitting recorded data 3 | * Copyright (C) 2015 Christian Berger 4 | * 5 | * This program is free software; you can redistribute it and/or 6 | * modify it under the terms of the GNU General Public License 7 | * as published by the Free Software Foundation; either version 2 8 | * of the License, or (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 18 | */ 19 | 20 | #include "Split.h" 21 | 22 | int32_t main(int32_t argc, char **argv) { 23 | split::Split s(argc, argv); 24 | return s.runModule(); 25 | } 26 | -------------------------------------------------------------------------------- /tools/spy/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # OpenDaVINCI. 3 | # 4 | # This software is open source. Please see COPYING and AUTHORS for further information. 5 | # 6 | 7 | PROJECT (spy) 8 | 9 | # Include directories from core. 10 | INCLUDE_DIRECTORIES (${libopendavinci_SOURCE_DIR}/include) 11 | INCLUDE_DIRECTORIES (include) 12 | 13 | # Recipe for building "spy". 14 | FILE(GLOB_RECURSE spy-sources "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") 15 | ADD_LIBRARY (spylib STATIC ${spy-sources}) 16 | ADD_EXECUTABLE (spy "${CMAKE_CURRENT_SOURCE_DIR}/apps/spy.cpp") 17 | TARGET_LINK_LIBRARIES (spy spylib ${OPENDAVINCI_LIBS} ${LIBS}) 18 | 19 | # Recipe for installing "spy". 20 | INSTALL(TARGETS spy RUNTIME DESTINATION bin) 21 | 22 | # Enable CxxTest for all available testsuites. 23 | IF(CXXTEST_FOUND) 24 | FILE(GLOB spy-testsuites "${CMAKE_CURRENT_SOURCE_DIR}/testsuites/*.h") 25 | 26 | FOREACH(testsuite ${spy-testsuites}) 27 | STRING(REPLACE "/" ";" testsuite-list ${testsuite}) 28 | 29 | LIST(LENGTH testsuite-list len) 30 | MATH(EXPR lastItem "${len}-1") 31 | LIST(GET testsuite-list "${lastItem}" testsuite-short) 32 | 33 | CXXTEST_ADD_TEST(${testsuite-short}-TestSuite ${testsuite-short}-TestSuite.cpp ${testsuite}) 34 | TARGET_LINK_LIBRARIES(${testsuite-short}-TestSuite spylib ${OPENDAVINCI_LIBS} ${LIBS}) 35 | ENDFOREACH() 36 | ENDIF(CXXTEST_FOUND) 37 | -------------------------------------------------------------------------------- /tools/spy/apps/spy.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * OpenDaVINCI. 3 | * 4 | * This software is open source. Please see COPYING and AUTHORS for further information. 5 | */ 6 | 7 | #include "Spy.h" 8 | 9 | int32_t main(int32_t argc, char **argv) { 10 | spy::Spy s(argc, argv); 11 | return s.runModule(); 12 | } 13 | -------------------------------------------------------------------------------- /tools/spy/src/Spy.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * OpenDaVINCI. 3 | * 4 | * This software is open source. Please see COPYING and AUTHORS for further information. 5 | */ 6 | 7 | #include 8 | 9 | #include "core/data/Container.h" 10 | 11 | #include "Spy.h" 12 | 13 | namespace spy { 14 | 15 | using namespace std; 16 | using namespace core::base; 17 | using namespace core::data; 18 | 19 | Spy::Spy(const int32_t &argc, char **argv) : 20 | ConferenceClientModule(argc, argv, "Spy"), 21 | m_fifo() {} 22 | 23 | Spy::~Spy() {} 24 | 25 | void Spy::setUp() {} 26 | 27 | void Spy::tearDown() {} 28 | 29 | ModuleState::MODULE_EXITCODE Spy::body() { 30 | // Add FIFOQueue to spy all data. 31 | addDataStoreFor(m_fifo); 32 | 33 | while (getModuleState() == ModuleState::RUNNING) { 34 | while (!m_fifo.isEmpty()) { 35 | Container c = m_fifo.leave(); 36 | 37 | cout << c.getSentTimeStamp().getYYYYMMDD_HHMMSSms() << "-->" << c.getReceivedTimeStamp().getYYYYMMDD_HHMMSSms() << " dt = " << (c.getReceivedTimeStamp() - c.getSentTimeStamp()).toString() << " ID = " << c.getDataType() << ": " << c.toString() << endl; 38 | } 39 | } 40 | 41 | return ModuleState::OKAY; 42 | } 43 | 44 | } // spy 45 | --------------------------------------------------------------------------------