Loading src/autocampars.php +32 −8 Original line number Original line Diff line number Diff line Loading @@ -976,11 +976,12 @@ function processPost($port) { exit ( 0 ); exit ( 0 ); } } if (array_key_exists ( 'update_default', $_POST )) { if (array_key_exists ( 'update_default', $_POST )) { $GLOBALS['configs'] ['defaultPage'] = $_POST ['default_page']; $GLOBALS['configs'] [$port] ['defaultPage'] = $_POST ['default_page']; log_msg("processPost($port) - updating default"); log_msg("processPost($port) - updating default, \$GLOBALS['configs'][\$port]['defaultPage'] = ".$GLOBALS['configs'] [$port] ['defaultPage']); // log_msg("GLOBALS['configs']=".print_r($GLOBALS['configs'],1)); // log_msg("GLOBALS['configs']=".print_r($GLOBALS['configs'],1)); saveRotateConfig ($port, $GLOBALS['numBackups'] ); saveRotateConfig ($port, $GLOBALS['numBackups'] ); processGet ($port); processGet ($port); log_close(); exit ( 0 ); exit ( 0 ); } } $needle = "save_"; $needle = "save_"; Loading @@ -988,7 +989,7 @@ function processPost($port) { if (substr ( $key, 0, strlen ( $needle ) ) == $needle) { if (substr ( $key, 0, strlen ( $needle ) ) == $needle) { $page = substr ( $key, strlen ( $needle ) ); $page = substr ( $key, strlen ( $needle ) ); $page = readParsToPage ($port, $page ); $page = readParsToPage ($port, $page ); $GLOBALS['configs'] ['defaultPage'] = $page; $GLOBALS['configs'] [$port] ['defaultPage'] = $page; log_msg("processPost($port) - save_"); log_msg("processPost($port) - save_"); // log_msg("GLOBALS['configs']=".print_r($GLOBALS['configs'],1)); // log_msg("GLOBALS['configs']=".print_r($GLOBALS['configs'],1)); saveRotateConfig ($port, $GLOBALS['numBackups'] ); saveRotateConfig ($port, $GLOBALS['numBackups'] ); Loading Loading @@ -1292,6 +1293,9 @@ function setParsFromPage($sensor_port, $page, $mask, $initmode = false) { // Similar things for nc353 // Similar things for nc353 $compressor_run = array ( $compressor_run = array ( 'COMPRESSOR_RUN' => 2 'COMPRESSOR_RUN' => 2 ); $sensor_run = array ( 'SENSOR_RUN' => 2 ); ); $daemon_en = array ( $daemon_en = array ( 'DAEMON_EN_AUTOEXPOSURE' => 1, 'DAEMON_EN_AUTOEXPOSURE' => 1, Loading @@ -1301,6 +1305,10 @@ function setParsFromPage($sensor_port, $page, $mask, $initmode = false) { 'DAEMON_EN_TEMPERATURE' => 0 'DAEMON_EN_TEMPERATURE' => 0 ); ); if (isset ( $parToSet ['SENSOR_RUN'] )) { $sensor_run ['SENSOR_RUN'] = $parToSet ['SENSOR_RUN']; unset ( $parToSet ['SENSOR_RUN'] ); } if (isset ( $parToSet ['COMPRESSOR_RUN'] )) { if (isset ( $parToSet ['COMPRESSOR_RUN'] )) { $compressor_run ['COMPRESSOR_RUN'] = $parToSet ['COMPRESSOR_RUN']; $compressor_run ['COMPRESSOR_RUN'] = $parToSet ['COMPRESSOR_RUN']; unset ( $parToSet ['COMPRESSOR_RUN'] ); unset ( $parToSet ['COMPRESSOR_RUN'] ); Loading Loading @@ -1341,18 +1349,32 @@ function setParsFromPage($sensor_port, $page, $mask, $initmode = false) { if (isset ( $daemon_en ['DAEMON_EN_TEMPERATURE'] )) if (isset ( $daemon_en ['DAEMON_EN_TEMPERATURE'] )) $daemon_en ['DAEMON_EN'] |= $daemon_en ['DAEMON_EN_TEMPERATURE'] ? 32 : 0; $daemon_en ['DAEMON_EN'] |= $daemon_en ['DAEMON_EN_TEMPERATURE'] ? 32 : 0; } } $frame_to_set = elphel_get_frame ( $GLOBALS ['master_port'] ) + ELPHEL_CONST_FRAME_DEAFAULT_AHEAD; $frame_to_set = elphel_get_frame ( $GLOBALS ['master_port'] ) + 0; // ELPHEL_CONST_FRAME_DEAFAULT_AHEAD; // If it was called from already running // If it was called from already running if (elphel_get_P_value ( $port, ELPHEL_COMPRESSOR_RUN ) || elphel_get_P_value ( $port, ELPHEL_DAEMON_EN )) { if (elphel_get_P_value ( $port, ELPHEL_COMPRESSOR_RUN ) || elphel_get_P_value ( $port, ELPHEL_DAEMON_EN )) { $frame_to_set += ELPHEL_CONST_FRAME_DEAFAULT_AHEAD; // Should we stop sequencers? // Should we stop sequencers? elphel_set_P_arr ( $port, array ( elphel_set_P_arr ( $port, array ( 'COMPRESSOR_RUN' => 0, 'COMPRESSOR_RUN' => 0, 'SENSOR_RUN' => 0, 'DAEMON_EN' => 0 'DAEMON_EN' => 0 ), $frame_to_set, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC ); // was -1 ("this frame") ), $frame_to_set, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC ); // was -1 ("this frame") $frame_to_set += 2; // advance frames, so next settings will be ASAP (sent immediate, not limited to 64?) for ($i = 0; $i< ELPHEL_CONST_FRAME_DEAFAULT_AHEAD; $i++){ // Single trigger elphel_set_P_value ( $GLOBALS['master_port'], ELPHEL_TRIG_PERIOD, 1, ELPHEL_CONST_FRAME_IMMED, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC); usleep ($GLOBALS['camera_state_arr']['max_frame_time']); // > 1 frame, so all channels will get trigger parameters? 3 2 2 1 -> 4 3 3 2 } } } log_msg ( "port ".$port. " \$frame_to_set=".$frame_to_set.", now= " . elphel_get_frame ( $GLOBALS ['master_port'])); log_msg ( "port ".$port. " setting @".$frame_to_set.": " .print_r($parToSet,1)); log_msg ( "port ".$port. " setting @".$frame_to_set.": " .print_r($parToSet,1)); // set all in ASAP mode elphel_set_P_arr ( $port, $parToSet, $frame_to_set, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC ); elphel_set_P_arr ( $port, $parToSet, $frame_to_set, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC ); $frame_to_set += 2; log_msg ( "port ".$port. " setting @".$frame_to_set." SENSOR_RUN= " . $sensor_run ['SENSOR_RUN']); elphel_set_P_arr ( $port, $sensor_run, $frame_to_set, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC ); $frame_to_set += 2; $frame_to_set += 2; log_msg ( "port ".$port. " setting @".$frame_to_set." COMPRESSOR_RUN= " . $compressor_run ['COMPRESSOR_RUN']); log_msg ( "port ".$port. " setting @".$frame_to_set." COMPRESSOR_RUN= " . $compressor_run ['COMPRESSOR_RUN']); elphel_set_P_arr ( $port, $compressor_run, $frame_to_set, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC ); elphel_set_P_arr ( $port, $compressor_run, $frame_to_set, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC ); Loading Loading @@ -1437,7 +1459,7 @@ function readParsToPage($sensor_port, $page) { } } // elphel_parse_P_name // elphel_parse_P_name function saveRotateConfig($sensor_port, $numBackups) { function saveRotateConfig($sensor_port, $numBackups) { log_msg("saveRotateConfig($sensor_port, $numBackups)"); log_msg("saveRotateConfig($sensor_port, $numBackups), \$GLOBALS['configs'] [$sensor_port] ['defaultPage'] = ".$GLOBALS['configs'] [$sensor_port] ['defaultPage']); // log_msg("GLOBALS['configs']=".print_r($GLOBALS['configs'],1)); // log_msg("GLOBALS['configs']=".print_r($GLOBALS['configs'],1)); rotateConfig ($sensor_port, $numBackups ); rotateConfig ($sensor_port, $numBackups ); Loading Loading @@ -1521,6 +1543,8 @@ function parseConfig($filename) { function encodeConfig($config) { function encodeConfig($config) { log_msg("encodeConfig(): sensor_port=".$GLOBALS['sensor_port']); // , config=".print_r($config,1)); log_msg("encodeConfig(): sensor_port=".$GLOBALS['sensor_port']); // , config=".print_r($config,1)); log_msg(" \$config['defaultPage'] = ".$config['defaultPage']); $xml = "<?xml version=\"1.0\" standalone=\"yes\"?>\n<!-- This file is generated by " . $_SERVER ['argv'] [0] . " -->\n"; $xml = "<?xml version=\"1.0\" standalone=\"yes\"?>\n<!-- This file is generated by " . $_SERVER ['argv'] [0] . " -->\n"; $xml .= " <autocampars>\n"; $xml .= " <autocampars>\n"; $xml .= "<!-- File version -->\n"; $xml .= "<!-- File version -->\n"; Loading Loading
src/autocampars.php +32 −8 Original line number Original line Diff line number Diff line Loading @@ -976,11 +976,12 @@ function processPost($port) { exit ( 0 ); exit ( 0 ); } } if (array_key_exists ( 'update_default', $_POST )) { if (array_key_exists ( 'update_default', $_POST )) { $GLOBALS['configs'] ['defaultPage'] = $_POST ['default_page']; $GLOBALS['configs'] [$port] ['defaultPage'] = $_POST ['default_page']; log_msg("processPost($port) - updating default"); log_msg("processPost($port) - updating default, \$GLOBALS['configs'][\$port]['defaultPage'] = ".$GLOBALS['configs'] [$port] ['defaultPage']); // log_msg("GLOBALS['configs']=".print_r($GLOBALS['configs'],1)); // log_msg("GLOBALS['configs']=".print_r($GLOBALS['configs'],1)); saveRotateConfig ($port, $GLOBALS['numBackups'] ); saveRotateConfig ($port, $GLOBALS['numBackups'] ); processGet ($port); processGet ($port); log_close(); exit ( 0 ); exit ( 0 ); } } $needle = "save_"; $needle = "save_"; Loading @@ -988,7 +989,7 @@ function processPost($port) { if (substr ( $key, 0, strlen ( $needle ) ) == $needle) { if (substr ( $key, 0, strlen ( $needle ) ) == $needle) { $page = substr ( $key, strlen ( $needle ) ); $page = substr ( $key, strlen ( $needle ) ); $page = readParsToPage ($port, $page ); $page = readParsToPage ($port, $page ); $GLOBALS['configs'] ['defaultPage'] = $page; $GLOBALS['configs'] [$port] ['defaultPage'] = $page; log_msg("processPost($port) - save_"); log_msg("processPost($port) - save_"); // log_msg("GLOBALS['configs']=".print_r($GLOBALS['configs'],1)); // log_msg("GLOBALS['configs']=".print_r($GLOBALS['configs'],1)); saveRotateConfig ($port, $GLOBALS['numBackups'] ); saveRotateConfig ($port, $GLOBALS['numBackups'] ); Loading Loading @@ -1292,6 +1293,9 @@ function setParsFromPage($sensor_port, $page, $mask, $initmode = false) { // Similar things for nc353 // Similar things for nc353 $compressor_run = array ( $compressor_run = array ( 'COMPRESSOR_RUN' => 2 'COMPRESSOR_RUN' => 2 ); $sensor_run = array ( 'SENSOR_RUN' => 2 ); ); $daemon_en = array ( $daemon_en = array ( 'DAEMON_EN_AUTOEXPOSURE' => 1, 'DAEMON_EN_AUTOEXPOSURE' => 1, Loading @@ -1301,6 +1305,10 @@ function setParsFromPage($sensor_port, $page, $mask, $initmode = false) { 'DAEMON_EN_TEMPERATURE' => 0 'DAEMON_EN_TEMPERATURE' => 0 ); ); if (isset ( $parToSet ['SENSOR_RUN'] )) { $sensor_run ['SENSOR_RUN'] = $parToSet ['SENSOR_RUN']; unset ( $parToSet ['SENSOR_RUN'] ); } if (isset ( $parToSet ['COMPRESSOR_RUN'] )) { if (isset ( $parToSet ['COMPRESSOR_RUN'] )) { $compressor_run ['COMPRESSOR_RUN'] = $parToSet ['COMPRESSOR_RUN']; $compressor_run ['COMPRESSOR_RUN'] = $parToSet ['COMPRESSOR_RUN']; unset ( $parToSet ['COMPRESSOR_RUN'] ); unset ( $parToSet ['COMPRESSOR_RUN'] ); Loading Loading @@ -1341,18 +1349,32 @@ function setParsFromPage($sensor_port, $page, $mask, $initmode = false) { if (isset ( $daemon_en ['DAEMON_EN_TEMPERATURE'] )) if (isset ( $daemon_en ['DAEMON_EN_TEMPERATURE'] )) $daemon_en ['DAEMON_EN'] |= $daemon_en ['DAEMON_EN_TEMPERATURE'] ? 32 : 0; $daemon_en ['DAEMON_EN'] |= $daemon_en ['DAEMON_EN_TEMPERATURE'] ? 32 : 0; } } $frame_to_set = elphel_get_frame ( $GLOBALS ['master_port'] ) + ELPHEL_CONST_FRAME_DEAFAULT_AHEAD; $frame_to_set = elphel_get_frame ( $GLOBALS ['master_port'] ) + 0; // ELPHEL_CONST_FRAME_DEAFAULT_AHEAD; // If it was called from already running // If it was called from already running if (elphel_get_P_value ( $port, ELPHEL_COMPRESSOR_RUN ) || elphel_get_P_value ( $port, ELPHEL_DAEMON_EN )) { if (elphel_get_P_value ( $port, ELPHEL_COMPRESSOR_RUN ) || elphel_get_P_value ( $port, ELPHEL_DAEMON_EN )) { $frame_to_set += ELPHEL_CONST_FRAME_DEAFAULT_AHEAD; // Should we stop sequencers? // Should we stop sequencers? elphel_set_P_arr ( $port, array ( elphel_set_P_arr ( $port, array ( 'COMPRESSOR_RUN' => 0, 'COMPRESSOR_RUN' => 0, 'SENSOR_RUN' => 0, 'DAEMON_EN' => 0 'DAEMON_EN' => 0 ), $frame_to_set, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC ); // was -1 ("this frame") ), $frame_to_set, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC ); // was -1 ("this frame") $frame_to_set += 2; // advance frames, so next settings will be ASAP (sent immediate, not limited to 64?) for ($i = 0; $i< ELPHEL_CONST_FRAME_DEAFAULT_AHEAD; $i++){ // Single trigger elphel_set_P_value ( $GLOBALS['master_port'], ELPHEL_TRIG_PERIOD, 1, ELPHEL_CONST_FRAME_IMMED, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC); usleep ($GLOBALS['camera_state_arr']['max_frame_time']); // > 1 frame, so all channels will get trigger parameters? 3 2 2 1 -> 4 3 3 2 } } } log_msg ( "port ".$port. " \$frame_to_set=".$frame_to_set.", now= " . elphel_get_frame ( $GLOBALS ['master_port'])); log_msg ( "port ".$port. " setting @".$frame_to_set.": " .print_r($parToSet,1)); log_msg ( "port ".$port. " setting @".$frame_to_set.": " .print_r($parToSet,1)); // set all in ASAP mode elphel_set_P_arr ( $port, $parToSet, $frame_to_set, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC ); elphel_set_P_arr ( $port, $parToSet, $frame_to_set, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC ); $frame_to_set += 2; log_msg ( "port ".$port. " setting @".$frame_to_set." SENSOR_RUN= " . $sensor_run ['SENSOR_RUN']); elphel_set_P_arr ( $port, $sensor_run, $frame_to_set, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC ); $frame_to_set += 2; $frame_to_set += 2; log_msg ( "port ".$port. " setting @".$frame_to_set." COMPRESSOR_RUN= " . $compressor_run ['COMPRESSOR_RUN']); log_msg ( "port ".$port. " setting @".$frame_to_set." COMPRESSOR_RUN= " . $compressor_run ['COMPRESSOR_RUN']); elphel_set_P_arr ( $port, $compressor_run, $frame_to_set, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC ); elphel_set_P_arr ( $port, $compressor_run, $frame_to_set, ELPHEL_CONST_FRAMEPAIR_FORCE_NEWPROC ); Loading Loading @@ -1437,7 +1459,7 @@ function readParsToPage($sensor_port, $page) { } } // elphel_parse_P_name // elphel_parse_P_name function saveRotateConfig($sensor_port, $numBackups) { function saveRotateConfig($sensor_port, $numBackups) { log_msg("saveRotateConfig($sensor_port, $numBackups)"); log_msg("saveRotateConfig($sensor_port, $numBackups), \$GLOBALS['configs'] [$sensor_port] ['defaultPage'] = ".$GLOBALS['configs'] [$sensor_port] ['defaultPage']); // log_msg("GLOBALS['configs']=".print_r($GLOBALS['configs'],1)); // log_msg("GLOBALS['configs']=".print_r($GLOBALS['configs'],1)); rotateConfig ($sensor_port, $numBackups ); rotateConfig ($sensor_port, $numBackups ); Loading Loading @@ -1521,6 +1543,8 @@ function parseConfig($filename) { function encodeConfig($config) { function encodeConfig($config) { log_msg("encodeConfig(): sensor_port=".$GLOBALS['sensor_port']); // , config=".print_r($config,1)); log_msg("encodeConfig(): sensor_port=".$GLOBALS['sensor_port']); // , config=".print_r($config,1)); log_msg(" \$config['defaultPage'] = ".$config['defaultPage']); $xml = "<?xml version=\"1.0\" standalone=\"yes\"?>\n<!-- This file is generated by " . $_SERVER ['argv'] [0] . " -->\n"; $xml = "<?xml version=\"1.0\" standalone=\"yes\"?>\n<!-- This file is generated by " . $_SERVER ['argv'] [0] . " -->\n"; $xml .= " <autocampars>\n"; $xml .= " <autocampars>\n"; $xml .= "<!-- File version -->\n"; $xml .= "<!-- File version -->\n"; Loading