Loading src/camogm.c +17 −12 Original line number Original line Diff line number Diff line Loading @@ -163,8 +163,9 @@ static int get_sysfs_name(const char *dev_name, char *sys_name, size_t str_sz, i static int get_disk_range(const char *name, struct range *rng); static int get_disk_range(const char *name, struct range *rng); static int set_disk_range(const struct range *rng); static int set_disk_range(const struct range *rng); static void get_disk_info(camogm_state *state); static void get_disk_info(camogm_state *state); #if 0 static struct timeval get_fpga_time(const int fd_fparsall, unsigned int port); static struct timeval get_fpga_time(const int fd_fparsall, unsigned int port); #endif int open_files(camogm_state *state); int open_files(camogm_state *state); unsigned long getGPValue(unsigned int port, unsigned long GPNumber); unsigned long getGPValue(unsigned int port, unsigned long GPNumber); void setGValue(unsigned int port, unsigned long GNumber, unsigned long value); void setGValue(unsigned int port, unsigned long GNumber, unsigned long value); Loading Loading @@ -342,7 +343,6 @@ int camogm_start(camogm_state *state) { { int timestamp_start; int timestamp_start; int rslt; int rslt; int dummy; int next_metadata_start, next_jpeg_len, fp; int next_metadata_start, next_jpeg_len, fp; int port = state->port_num; int port = state->port_num; int i, used_space; int i, used_space; Loading Loading @@ -547,7 +547,7 @@ int camogm_start(camogm_state *state) } } // and read it // and read it lseek(state->fd_head[chn], 0, 0); lseek(state->fd_head[chn], 0, 0); dummy=read(state->fd_head[chn], state->jpegHeader[chn], state->head_size[chn]); //? read(state->fd_head[chn], state->jpegHeader[chn], state->head_size[chn]); //? // Restore read pointer to the original (now there may be no frame ready there yet) // Restore read pointer to the original (now there may be no frame ready there yet) lseek(state->fd_circ[chn], state->cirbuf_rp[chn], SEEK_SET); lseek(state->fd_circ[chn], state->cirbuf_rp[chn], SEEK_SET); state->image_size[chn] = 0; state->image_size[chn] = 0; Loading Loading @@ -592,14 +592,16 @@ int camogm_start(camogm_state *state) int sendImageFrame(camogm_state *state) int sendImageFrame(camogm_state *state) { { int rslt; int rslt; #if USE_OGG_PACKET_TYPE unsigned char frame_packet_type = PACKET_IS_SYNCPOINT; unsigned char frame_packet_type = PACKET_IS_SYNCPOINT; #endif int timestamp_start; int timestamp_start; int * ifp_this = (int*)&(state->this_frame_params[state->port_num]); int * ifp_this = (int*)&(state->this_frame_params[state->port_num]); int fp; int fp; int fd_exif_tiff; // switching between TIFF and Exif depending on coloe mode int fd_exif_tiff; // switching between TIFF and Exif depending on coloe mode int port = state->port_num; int port = state->port_num; struct timeval start_time, end_time; // struct timeval start_time, end_time; int i,j,k; //debug int i;//,j,k; //debug int dbg_meta; int dbg_meta; if (port < 0) { if (port < 0) { D1(fprintf(debug_file, "sendImageFrame:0: port < 0!\n")); D1(fprintf(debug_file, "sendImageFrame:0: port < 0!\n")); Loading Loading @@ -737,8 +739,10 @@ int sendImageFrame(camogm_state *state) // prepare a packet to be sent (a lst of memory chunks) // prepare a packet to be sent (a lst of memory chunks) state->chunk_index = 0; state->chunk_index = 0; #if USE_OGG_PACKET_TYPE state->packetchunks[state->chunk_index ].bytes = 1; state->packetchunks[state->chunk_index ].bytes = 1; state->packetchunks[state->chunk_index++].chunk = &frame_packet_type; // [0] state->packetchunks[state->chunk_index++].chunk = &frame_packet_type; // [0] #endif if (state->exif > 0) { // insert Exif/Tiff if (state->exif > 0) { // insert Exif/Tiff D4(fprintf(debug_file, "_7_")); D4(fprintf(debug_file, "_7_")); if (state->this_frame_params[port].color == COLORMODE_RAW) { // Tiff if (state->this_frame_params[port].color == COLORMODE_RAW) { // Tiff Loading Loading @@ -1712,7 +1716,7 @@ int listener_loop(camogm_state *state) { { FILE *cmd_file; FILE *cmd_file; int rslt, ret, cmd, f_ok, i; int rslt, ret, cmd, f_ok, i; int fp0, fp1; // int fp0, fp1; int process = 1; int process = 1; int curr_port = 0; int curr_port = 0; const char *pipe_name = state->pipe_name; const char *pipe_name = state->pipe_name; Loading Loading @@ -2036,7 +2040,7 @@ static int get_sysfs_name(const char *dev_name, char *sys_name, size_t str_sz, i */ */ static int get_disk_range(const char *name, struct range *rng) static int get_disk_range(const char *name, struct range *rng) { { int ret = 0, dummy; int ret = 0; int fd; int fd; uint64_t val; uint64_t val; char data[SMALL_BUFF_LEN] = {0}; char data[SMALL_BUFF_LEN] = {0}; Loading @@ -2047,7 +2051,7 @@ static int get_disk_range(const char *name, struct range *rng) if (strlen(sysfs_name) > 0) { if (strlen(sysfs_name) > 0) { fd = open(sysfs_name, O_RDONLY); fd = open(sysfs_name, O_RDONLY); if (fd >= 0) { if (fd >= 0) { dummy=read(fd, data, SMALL_BUFF_LEN); read(fd, data, SMALL_BUFF_LEN); if ((val = strtoull(data, NULL, 10)) != 0) if ((val = strtoull(data, NULL, 10)) != 0) rng->from = val; rng->from = val; else else Loading @@ -2063,7 +2067,7 @@ static int get_disk_range(const char *name, struct range *rng) if (get_sysfs_name(name, sysfs_name, ELPHEL_PATH_MAX, TYPE_SIZE) > 0) { if (get_sysfs_name(name, sysfs_name, ELPHEL_PATH_MAX, TYPE_SIZE) > 0) { fd = open(sysfs_name, O_RDONLY); fd = open(sysfs_name, O_RDONLY); if (fd >= 0) { if (fd >= 0) { dummy=read(fd, data, SMALL_BUFF_LEN); read(fd, data, SMALL_BUFF_LEN); if ((val = strtoull(data, NULL, 10)) != 0) if ((val = strtoull(data, NULL, 10)) != 0) rng->to = rng->from + val; rng->to = rng->from + val; else else Loading Loading @@ -2092,20 +2096,19 @@ static int set_disk_range(const struct range *rng) int ret = 0; int ret = 0; char buff[SMALL_BUFF_LEN] = {0}; char buff[SMALL_BUFF_LEN] = {0}; int len; int len; int dummy; fd = open(SYSFS_AHCI_LBA_START, O_WRONLY); fd = open(SYSFS_AHCI_LBA_START, O_WRONLY); if (fd < 0) if (fd < 0) return -1; return -1; len = snprintf(buff, SMALL_BUFF_LEN, "%llu", rng->from); len = snprintf(buff, SMALL_BUFF_LEN, "%llu", rng->from); dummy=write(fd, buff, len + 1); write(fd, buff, len + 1); close(fd); close(fd); fd = open(SYSFS_AHCI_LBA_END, O_WRONLY); fd = open(SYSFS_AHCI_LBA_END, O_WRONLY); if (fd < 0) if (fd < 0) return -1; return -1; len = snprintf(buff, SMALL_BUFF_LEN, "%llu", rng->to); len = snprintf(buff, SMALL_BUFF_LEN, "%llu", rng->to); dummy=write(fd, buff, len + 1); write(fd, buff, len + 1); close(fd); close(fd); return ret; return ret; Loading Loading @@ -2492,6 +2495,7 @@ inline int is_fd_valid(int fd) return fcntl(fd, F_GETFD) != -1 || errno != EBADF; return fcntl(fd, F_GETFD) != -1 || errno != EBADF; } } #if 0 /** /** * @brief Get current FPGA time * @brief Get current FPGA time * @return Time value in \e timeval structure * @return Time value in \e timeval structure Loading @@ -2507,6 +2511,7 @@ struct timeval get_fpga_time(const int fd_fparsall, unsigned int port) return tv; return tv; } } #endif /** /** * @brief Get current FPGA microseconds of time to use for timing of the code * @brief Get current FPGA microseconds of time to use for timing of the code Loading src/camogm.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -55,7 +55,7 @@ #define CAMOGM_MIN_BUF_FRAMES 2 ///< buffer should accomodate at list this number of frames #define CAMOGM_MIN_BUF_FRAMES 2 ///< buffer should accomodate at list this number of frames #define FLUSH_DEBUG 1 ///< flush debug file after each print #define FLUSH_DEBUG 1 ///< flush debug file after each print #define USE_OGG_PACKET_TYPE 0 /// do not prepend image with packet type, such as PACKET_IS_SYNCPOINT #ifdef NODEBUG #ifdef NODEBUG #define D(x) #define D(x) #define D0(x) #define D0(x) Loading src/camogm_read.c +6 −10 Original line number Original line Diff line number Diff line Loading @@ -417,7 +417,6 @@ static int read_index(rawdev_buffer *rawdev, struct disk_index **indx) unsigned char read_buff[TIFF_HDR_OFFSET] = {0}; unsigned char read_buff[TIFF_HDR_OFFSET] = {0}; char str_buff[SMALL_BUFF_LEN] = {0}; char str_buff[SMALL_BUFF_LEN] = {0}; uint64_t save_pos = lseek64(rawdev->rawdev_fd, 0, SEEK_CUR); uint64_t save_pos = lseek64(rawdev->rawdev_fd, 0, SEEK_CUR); int dummy; if (indx == NULL) if (indx == NULL) return -1; return -1; Loading @@ -429,16 +428,16 @@ static int read_index(rawdev_buffer *rawdev, struct disk_index **indx) } } if (read_buff[2] == 0xff && read_buff[3] == 0xe1) { if (read_buff[2] == 0xff && read_buff[3] == 0xe1) { // get IFD0 offset from TIFF header // get IFD0 offset from TIFF header dummy=read(rawdev->rawdev_fd, &hdr, sizeof(struct tiff_hdr)); read(rawdev->rawdev_fd, &hdr, sizeof(struct tiff_hdr)); hdr_byte_order(&hdr); hdr_byte_order(&hdr); curr_pos = rawdev->file_start + TIFF_HDR_OFFSET + hdr.offset; curr_pos = rawdev->file_start + TIFF_HDR_OFFSET + hdr.offset; lseek64(rawdev->rawdev_fd, curr_pos, SEEK_SET); lseek64(rawdev->rawdev_fd, curr_pos, SEEK_SET); // process IFD0 and SubIFD fields // process IFD0 and SubIFD fields do { do { dummy=read(rawdev->rawdev_fd, &num_entries, sizeof(num_entries)); read(rawdev->rawdev_fd, &num_entries, sizeof(num_entries)); num_entries = __be16_to_cpu(num_entries); num_entries = __be16_to_cpu(num_entries); for (int i = 0; i < num_entries; i++) { for (int i = 0; i < num_entries; i++) { dummy=read(rawdev->rawdev_fd, &ifd, sizeof(struct ifd_entry)); read(rawdev->rawdev_fd, &ifd, sizeof(struct ifd_entry)); ifd_byte_order(&ifd); ifd_byte_order(&ifd); switch (ifd.tag) { switch (ifd.tag) { case Exif_Image_PageNumber: case Exif_Image_PageNumber: Loading @@ -457,7 +456,7 @@ static int read_index(rawdev_buffer *rawdev, struct disk_index **indx) } } // ensure that IFD0 finished correctly (0x00000000 in the end), set file pointer to SubIFD and // ensure that IFD0 finished correctly (0x00000000 in the end), set file pointer to SubIFD and // process remaining fields // process remaining fields dummy=read(rawdev->rawdev_fd, &data32, sizeof(data32)); read(rawdev->rawdev_fd, &data32, sizeof(data32)); process -= (subifd_offset == 0 || data32 != 0) ? 2 : 1; process -= (subifd_offset == 0 || data32 != 0) ? 2 : 1; curr_pos = rawdev->file_start + TIFF_HDR_OFFSET + subifd_offset; curr_pos = rawdev->file_start + TIFF_HDR_OFFSET + subifd_offset; lseek64(rawdev->rawdev_fd, curr_pos, SEEK_SET); lseek64(rawdev->rawdev_fd, curr_pos, SEEK_SET); Loading Loading @@ -815,11 +814,9 @@ static void send_fnum(int sockfd, size_t num) { { char buff[SMALL_BUFF_LEN] = {0}; char buff[SMALL_BUFF_LEN] = {0}; int len; int len; int dummy; len = snprintf(buff, SMALL_BUFF_LEN - 1, "Number of files: %d\n", num); len = snprintf(buff, SMALL_BUFF_LEN - 1, "Number of files: %d\n", num); buff[len] = '\0'; buff[len] = '\0'; dummy=write(sockfd, buff, len); write(sockfd, buff, len); } } /** /** Loading Loading @@ -1018,7 +1015,6 @@ void *reader(void *arg) .sockfd_const = &sockfd, .sockfd_const = &sockfd, .sockfd_temp = &fd .sockfd_temp = &fd }; }; int dummy; memset(&index_dir, 0, sizeof(struct disk_idir)); memset(&index_dir, 0, sizeof(struct disk_idir)); memset(&index_sparse, 0, sizeof(struct disk_idir)); memset(&index_sparse, 0, sizeof(struct disk_idir)); Loading Loading @@ -1069,7 +1065,7 @@ void *reader(void *arg) len = snprintf(send_buff, CMD_BUFF_LEN - 1, INDEX_FORMAT_STR, len = snprintf(send_buff, CMD_BUFF_LEN - 1, INDEX_FORMAT_STR, disk_indx->port, disk_indx->rawtime, disk_indx->usec, disk_indx->f_offset, disk_indx->f_size); disk_indx->port, disk_indx->rawtime, disk_indx->usec, disk_indx->f_offset, disk_indx->f_size); send_buff[len] = '\0'; send_buff[len] = '\0'; dummy=write(fd, send_buff, len); write(fd, send_buff, len); disk_indx = disk_indx->next; disk_indx = disk_indx->next; } } } else { } else { Loading src/camogmgui/camogm_interface.php +8 −8 Original line number Original line Diff line number Diff line Loading @@ -68,18 +68,18 @@ *! *! */ */ define('SSD_ROOT', '/mnt/sda1/'); define('SSD_ROOT', '/mnt/sda1/'); define('ASSUME_EXT4', 'sda1'); // comment out after testing ///define('ASSUME_EXT4', 'sda1'); // comment out after testing //define('USE_SYSLOG', 1); define('USE_SYSLOG', 0); // 1 to write to syslog $cmd = $_GET['cmd']; $cmd = $_GET['cmd']; $debug = $_GET['debug']; $debug = $_GET['debug']; $debuglev = $_GET['debuglev']; $debuglev = $_GET['debuglev']; $cmd_pipe = "/var/state/camogm_cmd"; $cmd_pipe = "/var/state/camogm_cmd"; $cmd_state = "/var/state/camogm.state"; $cmd_state = "/var/state/camogm.state"; $cmd_port = "3456"; $cmd_port = "3456"; //$default_state = "/home/root/camogm.disk"; $default_state = "/home/root/camogm.disk"; $default_state = "/etc/elphel393/camogm.disk"; ///$default_state = "/etc/elphel393/camogm.disk"; //$state_file = "/mnt/sda1/camogm.disk"; $state_file = "/mnt/sda1/camogm.disk"; $state_file = "/etc/elphel393/camogm.disk"; ///$state_file = "/etc/elphel393/camogm.disk"; $start_str = "camogm -n " . $cmd_pipe . " -p " . $cmd_port; $start_str = "camogm -n " . $cmd_pipe . " -p " . $cmd_port; //if (defined('USE_SYSLOG')) { //if (defined('USE_SYSLOG')) { if (USE_SYSLOG > 0) { if (USE_SYSLOG > 0) { Loading Loading @@ -766,7 +766,7 @@ function get_mnt_dev() foreach ($partitions as $partition => $size) { foreach ($partitions as $partition => $size) { $res = array(); $res = array(); $dev = "/dev/" . $partition; $dev = "/dev/" . $partition; if (!empty(ASSUME_EXT4)) { // avoiding I/O operations with /dev/sda if (defined('ASSUME_EXT4')) { // avoiding I/O operations with /dev/sda if ($partition == ASSUME_EXT4) { if ($partition == ASSUME_EXT4) { $res = "ext4"; $res = "ext4"; } else { } else { Loading Loading
src/camogm.c +17 −12 Original line number Original line Diff line number Diff line Loading @@ -163,8 +163,9 @@ static int get_sysfs_name(const char *dev_name, char *sys_name, size_t str_sz, i static int get_disk_range(const char *name, struct range *rng); static int get_disk_range(const char *name, struct range *rng); static int set_disk_range(const struct range *rng); static int set_disk_range(const struct range *rng); static void get_disk_info(camogm_state *state); static void get_disk_info(camogm_state *state); #if 0 static struct timeval get_fpga_time(const int fd_fparsall, unsigned int port); static struct timeval get_fpga_time(const int fd_fparsall, unsigned int port); #endif int open_files(camogm_state *state); int open_files(camogm_state *state); unsigned long getGPValue(unsigned int port, unsigned long GPNumber); unsigned long getGPValue(unsigned int port, unsigned long GPNumber); void setGValue(unsigned int port, unsigned long GNumber, unsigned long value); void setGValue(unsigned int port, unsigned long GNumber, unsigned long value); Loading Loading @@ -342,7 +343,6 @@ int camogm_start(camogm_state *state) { { int timestamp_start; int timestamp_start; int rslt; int rslt; int dummy; int next_metadata_start, next_jpeg_len, fp; int next_metadata_start, next_jpeg_len, fp; int port = state->port_num; int port = state->port_num; int i, used_space; int i, used_space; Loading Loading @@ -547,7 +547,7 @@ int camogm_start(camogm_state *state) } } // and read it // and read it lseek(state->fd_head[chn], 0, 0); lseek(state->fd_head[chn], 0, 0); dummy=read(state->fd_head[chn], state->jpegHeader[chn], state->head_size[chn]); //? read(state->fd_head[chn], state->jpegHeader[chn], state->head_size[chn]); //? // Restore read pointer to the original (now there may be no frame ready there yet) // Restore read pointer to the original (now there may be no frame ready there yet) lseek(state->fd_circ[chn], state->cirbuf_rp[chn], SEEK_SET); lseek(state->fd_circ[chn], state->cirbuf_rp[chn], SEEK_SET); state->image_size[chn] = 0; state->image_size[chn] = 0; Loading Loading @@ -592,14 +592,16 @@ int camogm_start(camogm_state *state) int sendImageFrame(camogm_state *state) int sendImageFrame(camogm_state *state) { { int rslt; int rslt; #if USE_OGG_PACKET_TYPE unsigned char frame_packet_type = PACKET_IS_SYNCPOINT; unsigned char frame_packet_type = PACKET_IS_SYNCPOINT; #endif int timestamp_start; int timestamp_start; int * ifp_this = (int*)&(state->this_frame_params[state->port_num]); int * ifp_this = (int*)&(state->this_frame_params[state->port_num]); int fp; int fp; int fd_exif_tiff; // switching between TIFF and Exif depending on coloe mode int fd_exif_tiff; // switching between TIFF and Exif depending on coloe mode int port = state->port_num; int port = state->port_num; struct timeval start_time, end_time; // struct timeval start_time, end_time; int i,j,k; //debug int i;//,j,k; //debug int dbg_meta; int dbg_meta; if (port < 0) { if (port < 0) { D1(fprintf(debug_file, "sendImageFrame:0: port < 0!\n")); D1(fprintf(debug_file, "sendImageFrame:0: port < 0!\n")); Loading Loading @@ -737,8 +739,10 @@ int sendImageFrame(camogm_state *state) // prepare a packet to be sent (a lst of memory chunks) // prepare a packet to be sent (a lst of memory chunks) state->chunk_index = 0; state->chunk_index = 0; #if USE_OGG_PACKET_TYPE state->packetchunks[state->chunk_index ].bytes = 1; state->packetchunks[state->chunk_index ].bytes = 1; state->packetchunks[state->chunk_index++].chunk = &frame_packet_type; // [0] state->packetchunks[state->chunk_index++].chunk = &frame_packet_type; // [0] #endif if (state->exif > 0) { // insert Exif/Tiff if (state->exif > 0) { // insert Exif/Tiff D4(fprintf(debug_file, "_7_")); D4(fprintf(debug_file, "_7_")); if (state->this_frame_params[port].color == COLORMODE_RAW) { // Tiff if (state->this_frame_params[port].color == COLORMODE_RAW) { // Tiff Loading Loading @@ -1712,7 +1716,7 @@ int listener_loop(camogm_state *state) { { FILE *cmd_file; FILE *cmd_file; int rslt, ret, cmd, f_ok, i; int rslt, ret, cmd, f_ok, i; int fp0, fp1; // int fp0, fp1; int process = 1; int process = 1; int curr_port = 0; int curr_port = 0; const char *pipe_name = state->pipe_name; const char *pipe_name = state->pipe_name; Loading Loading @@ -2036,7 +2040,7 @@ static int get_sysfs_name(const char *dev_name, char *sys_name, size_t str_sz, i */ */ static int get_disk_range(const char *name, struct range *rng) static int get_disk_range(const char *name, struct range *rng) { { int ret = 0, dummy; int ret = 0; int fd; int fd; uint64_t val; uint64_t val; char data[SMALL_BUFF_LEN] = {0}; char data[SMALL_BUFF_LEN] = {0}; Loading @@ -2047,7 +2051,7 @@ static int get_disk_range(const char *name, struct range *rng) if (strlen(sysfs_name) > 0) { if (strlen(sysfs_name) > 0) { fd = open(sysfs_name, O_RDONLY); fd = open(sysfs_name, O_RDONLY); if (fd >= 0) { if (fd >= 0) { dummy=read(fd, data, SMALL_BUFF_LEN); read(fd, data, SMALL_BUFF_LEN); if ((val = strtoull(data, NULL, 10)) != 0) if ((val = strtoull(data, NULL, 10)) != 0) rng->from = val; rng->from = val; else else Loading @@ -2063,7 +2067,7 @@ static int get_disk_range(const char *name, struct range *rng) if (get_sysfs_name(name, sysfs_name, ELPHEL_PATH_MAX, TYPE_SIZE) > 0) { if (get_sysfs_name(name, sysfs_name, ELPHEL_PATH_MAX, TYPE_SIZE) > 0) { fd = open(sysfs_name, O_RDONLY); fd = open(sysfs_name, O_RDONLY); if (fd >= 0) { if (fd >= 0) { dummy=read(fd, data, SMALL_BUFF_LEN); read(fd, data, SMALL_BUFF_LEN); if ((val = strtoull(data, NULL, 10)) != 0) if ((val = strtoull(data, NULL, 10)) != 0) rng->to = rng->from + val; rng->to = rng->from + val; else else Loading Loading @@ -2092,20 +2096,19 @@ static int set_disk_range(const struct range *rng) int ret = 0; int ret = 0; char buff[SMALL_BUFF_LEN] = {0}; char buff[SMALL_BUFF_LEN] = {0}; int len; int len; int dummy; fd = open(SYSFS_AHCI_LBA_START, O_WRONLY); fd = open(SYSFS_AHCI_LBA_START, O_WRONLY); if (fd < 0) if (fd < 0) return -1; return -1; len = snprintf(buff, SMALL_BUFF_LEN, "%llu", rng->from); len = snprintf(buff, SMALL_BUFF_LEN, "%llu", rng->from); dummy=write(fd, buff, len + 1); write(fd, buff, len + 1); close(fd); close(fd); fd = open(SYSFS_AHCI_LBA_END, O_WRONLY); fd = open(SYSFS_AHCI_LBA_END, O_WRONLY); if (fd < 0) if (fd < 0) return -1; return -1; len = snprintf(buff, SMALL_BUFF_LEN, "%llu", rng->to); len = snprintf(buff, SMALL_BUFF_LEN, "%llu", rng->to); dummy=write(fd, buff, len + 1); write(fd, buff, len + 1); close(fd); close(fd); return ret; return ret; Loading Loading @@ -2492,6 +2495,7 @@ inline int is_fd_valid(int fd) return fcntl(fd, F_GETFD) != -1 || errno != EBADF; return fcntl(fd, F_GETFD) != -1 || errno != EBADF; } } #if 0 /** /** * @brief Get current FPGA time * @brief Get current FPGA time * @return Time value in \e timeval structure * @return Time value in \e timeval structure Loading @@ -2507,6 +2511,7 @@ struct timeval get_fpga_time(const int fd_fparsall, unsigned int port) return tv; return tv; } } #endif /** /** * @brief Get current FPGA microseconds of time to use for timing of the code * @brief Get current FPGA microseconds of time to use for timing of the code Loading
src/camogm.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -55,7 +55,7 @@ #define CAMOGM_MIN_BUF_FRAMES 2 ///< buffer should accomodate at list this number of frames #define CAMOGM_MIN_BUF_FRAMES 2 ///< buffer should accomodate at list this number of frames #define FLUSH_DEBUG 1 ///< flush debug file after each print #define FLUSH_DEBUG 1 ///< flush debug file after each print #define USE_OGG_PACKET_TYPE 0 /// do not prepend image with packet type, such as PACKET_IS_SYNCPOINT #ifdef NODEBUG #ifdef NODEBUG #define D(x) #define D(x) #define D0(x) #define D0(x) Loading
src/camogm_read.c +6 −10 Original line number Original line Diff line number Diff line Loading @@ -417,7 +417,6 @@ static int read_index(rawdev_buffer *rawdev, struct disk_index **indx) unsigned char read_buff[TIFF_HDR_OFFSET] = {0}; unsigned char read_buff[TIFF_HDR_OFFSET] = {0}; char str_buff[SMALL_BUFF_LEN] = {0}; char str_buff[SMALL_BUFF_LEN] = {0}; uint64_t save_pos = lseek64(rawdev->rawdev_fd, 0, SEEK_CUR); uint64_t save_pos = lseek64(rawdev->rawdev_fd, 0, SEEK_CUR); int dummy; if (indx == NULL) if (indx == NULL) return -1; return -1; Loading @@ -429,16 +428,16 @@ static int read_index(rawdev_buffer *rawdev, struct disk_index **indx) } } if (read_buff[2] == 0xff && read_buff[3] == 0xe1) { if (read_buff[2] == 0xff && read_buff[3] == 0xe1) { // get IFD0 offset from TIFF header // get IFD0 offset from TIFF header dummy=read(rawdev->rawdev_fd, &hdr, sizeof(struct tiff_hdr)); read(rawdev->rawdev_fd, &hdr, sizeof(struct tiff_hdr)); hdr_byte_order(&hdr); hdr_byte_order(&hdr); curr_pos = rawdev->file_start + TIFF_HDR_OFFSET + hdr.offset; curr_pos = rawdev->file_start + TIFF_HDR_OFFSET + hdr.offset; lseek64(rawdev->rawdev_fd, curr_pos, SEEK_SET); lseek64(rawdev->rawdev_fd, curr_pos, SEEK_SET); // process IFD0 and SubIFD fields // process IFD0 and SubIFD fields do { do { dummy=read(rawdev->rawdev_fd, &num_entries, sizeof(num_entries)); read(rawdev->rawdev_fd, &num_entries, sizeof(num_entries)); num_entries = __be16_to_cpu(num_entries); num_entries = __be16_to_cpu(num_entries); for (int i = 0; i < num_entries; i++) { for (int i = 0; i < num_entries; i++) { dummy=read(rawdev->rawdev_fd, &ifd, sizeof(struct ifd_entry)); read(rawdev->rawdev_fd, &ifd, sizeof(struct ifd_entry)); ifd_byte_order(&ifd); ifd_byte_order(&ifd); switch (ifd.tag) { switch (ifd.tag) { case Exif_Image_PageNumber: case Exif_Image_PageNumber: Loading @@ -457,7 +456,7 @@ static int read_index(rawdev_buffer *rawdev, struct disk_index **indx) } } // ensure that IFD0 finished correctly (0x00000000 in the end), set file pointer to SubIFD and // ensure that IFD0 finished correctly (0x00000000 in the end), set file pointer to SubIFD and // process remaining fields // process remaining fields dummy=read(rawdev->rawdev_fd, &data32, sizeof(data32)); read(rawdev->rawdev_fd, &data32, sizeof(data32)); process -= (subifd_offset == 0 || data32 != 0) ? 2 : 1; process -= (subifd_offset == 0 || data32 != 0) ? 2 : 1; curr_pos = rawdev->file_start + TIFF_HDR_OFFSET + subifd_offset; curr_pos = rawdev->file_start + TIFF_HDR_OFFSET + subifd_offset; lseek64(rawdev->rawdev_fd, curr_pos, SEEK_SET); lseek64(rawdev->rawdev_fd, curr_pos, SEEK_SET); Loading Loading @@ -815,11 +814,9 @@ static void send_fnum(int sockfd, size_t num) { { char buff[SMALL_BUFF_LEN] = {0}; char buff[SMALL_BUFF_LEN] = {0}; int len; int len; int dummy; len = snprintf(buff, SMALL_BUFF_LEN - 1, "Number of files: %d\n", num); len = snprintf(buff, SMALL_BUFF_LEN - 1, "Number of files: %d\n", num); buff[len] = '\0'; buff[len] = '\0'; dummy=write(sockfd, buff, len); write(sockfd, buff, len); } } /** /** Loading Loading @@ -1018,7 +1015,6 @@ void *reader(void *arg) .sockfd_const = &sockfd, .sockfd_const = &sockfd, .sockfd_temp = &fd .sockfd_temp = &fd }; }; int dummy; memset(&index_dir, 0, sizeof(struct disk_idir)); memset(&index_dir, 0, sizeof(struct disk_idir)); memset(&index_sparse, 0, sizeof(struct disk_idir)); memset(&index_sparse, 0, sizeof(struct disk_idir)); Loading Loading @@ -1069,7 +1065,7 @@ void *reader(void *arg) len = snprintf(send_buff, CMD_BUFF_LEN - 1, INDEX_FORMAT_STR, len = snprintf(send_buff, CMD_BUFF_LEN - 1, INDEX_FORMAT_STR, disk_indx->port, disk_indx->rawtime, disk_indx->usec, disk_indx->f_offset, disk_indx->f_size); disk_indx->port, disk_indx->rawtime, disk_indx->usec, disk_indx->f_offset, disk_indx->f_size); send_buff[len] = '\0'; send_buff[len] = '\0'; dummy=write(fd, send_buff, len); write(fd, send_buff, len); disk_indx = disk_indx->next; disk_indx = disk_indx->next; } } } else { } else { Loading
src/camogmgui/camogm_interface.php +8 −8 Original line number Original line Diff line number Diff line Loading @@ -68,18 +68,18 @@ *! *! */ */ define('SSD_ROOT', '/mnt/sda1/'); define('SSD_ROOT', '/mnt/sda1/'); define('ASSUME_EXT4', 'sda1'); // comment out after testing ///define('ASSUME_EXT4', 'sda1'); // comment out after testing //define('USE_SYSLOG', 1); define('USE_SYSLOG', 0); // 1 to write to syslog $cmd = $_GET['cmd']; $cmd = $_GET['cmd']; $debug = $_GET['debug']; $debug = $_GET['debug']; $debuglev = $_GET['debuglev']; $debuglev = $_GET['debuglev']; $cmd_pipe = "/var/state/camogm_cmd"; $cmd_pipe = "/var/state/camogm_cmd"; $cmd_state = "/var/state/camogm.state"; $cmd_state = "/var/state/camogm.state"; $cmd_port = "3456"; $cmd_port = "3456"; //$default_state = "/home/root/camogm.disk"; $default_state = "/home/root/camogm.disk"; $default_state = "/etc/elphel393/camogm.disk"; ///$default_state = "/etc/elphel393/camogm.disk"; //$state_file = "/mnt/sda1/camogm.disk"; $state_file = "/mnt/sda1/camogm.disk"; $state_file = "/etc/elphel393/camogm.disk"; ///$state_file = "/etc/elphel393/camogm.disk"; $start_str = "camogm -n " . $cmd_pipe . " -p " . $cmd_port; $start_str = "camogm -n " . $cmd_pipe . " -p " . $cmd_port; //if (defined('USE_SYSLOG')) { //if (defined('USE_SYSLOG')) { if (USE_SYSLOG > 0) { if (USE_SYSLOG > 0) { Loading Loading @@ -766,7 +766,7 @@ function get_mnt_dev() foreach ($partitions as $partition => $size) { foreach ($partitions as $partition => $size) { $res = array(); $res = array(); $dev = "/dev/" . $partition; $dev = "/dev/" . $partition; if (!empty(ASSUME_EXT4)) { // avoiding I/O operations with /dev/sda if (defined('ASSUME_EXT4')) { // avoiding I/O operations with /dev/sda if ($partition == ASSUME_EXT4) { if ($partition == ASSUME_EXT4) { $res = "ext4"; $res = "ext4"; } else { } else { Loading