cql::cql_stream_t cql::cql_session_impl_t::prepare( const boost::shared_ptr<cql_query_t>& query, cql_connection_t::cql_message_callback_t callback, cql_connection_t::cql_message_errback_t errback) { return execute_operation(query, callback, errback, &cql_connection_t::prepare); }
ViewReaction * Calculator::proceed_to_next_state(INPUT_TYPES input_type, OPERATION_MODE operation_mode, int number) { switch (input_type) { case INPUT_TYPES::OPERAND_CHARACTER: on_character_insertion(input_type); break; case INPUT_TYPES::OPERATOR: execute_operation(operation_mode, number, input_type); break; case INPUT_TYPES::MEMORY_SAVE: save_in_memory(number, input_type); break; case INPUT_TYPES::MEMORY_READ: read_from_memory(input_type); break; case INPUT_TYPES::CLEAR_HISTORY: clear_history(input_type); break; } }
/* Execute all operations in a single instruction */ Change* execute_instruction(Instruction* inst, int* op_count, int* vect_count) { Operation* current_op = inst->operations; Change* all_changes = NULL; Change* last_change; Change* new_changes; while(current_op) { if (vect_on) { /* Uli 04/13/2011 */ (*vect_count)++; } (*op_count)++; new_changes = execute_operation(current_op); if (!all_changes) { all_changes = new_changes; last_change = new_changes; } else last_change->next = new_changes; /* Move last change to end */ if (last_change) while(last_change->next) last_change = last_change->next; current_op = current_op->next; } return(all_changes); }
QString TCtrl::execute_calc_command(TCommand command, QString arg) { TComplex tmp_comp; QStringList list_arg; QString res; switch (command) { case com_Number: state = c_editing; break; case com_Rev: if (state == c_exp_done) { processor.reset(); } processor.set_rop(TComplex(arg)); processor.run_func(Rev); res = processor.get_rop().get_complex(); execute_editor_command(com_Set_str, res); state = c_fun_done; break; case com_Sqr: if (state == c_exp_done) { processor.reset(); } processor.set_rop(TComplex(arg)); processor.run_func(Sqr); res = processor.get_rop().get_complex(); execute_editor_command(com_Set_str, res); state = c_fun_done; break; case com_Mod: tmp_comp = TComplex(arg); res = QString::number(round(tmp_comp.module()*10000)/10000); break; case com_Arg_rad: tmp_comp = TComplex(arg); res = QString::number(round(tmp_comp.angle_rad()*10000)/10000); break; case com_Arg_deg: tmp_comp = TComplex(arg); res = QString::number(round(tmp_comp.angle_deg()*10000)/10000); break; case com_Pwr: list_arg = arg.split("|"); tmp_comp = TComplex(list_arg[0]); tmp_comp = tmp_comp.to_power(list_arg[1].toLong()); //tmp_comp = TComplex(round(tmp_comp.get_re()*10000)/10000, round(tmp_comp.get_im()*10000)/10000); tmp_comp = TComplex(tmp_comp.get_re(), tmp_comp.get_im()); res = tmp_comp.get_complex(); break; case com_Root: list_arg = arg.split("|"); tmp_comp = TComplex(list_arg[0]); //res = QString::number(list_arg[1].toLong()) + " " + QString::number(list_arg[2].toLong()); tmp_comp = tmp_comp.sqrt(list_arg[1].toLong(), list_arg[2].toLong()); //res = arg; //tmp_comp = TComplex(round(tmp_comp.get_re()*10000)/10000, round(tmp_comp.get_im()*10000)/10000); tmp_comp = TComplex(tmp_comp.get_re(), tmp_comp.get_im()); res = tmp_comp.get_complex(); break; case com_Add: res = execute_operation(Add, arg); break; case com_Sub: res = execute_operation(Sub, arg); break; case com_Mul: res = execute_operation(Mul, arg); break; case com_Div: res = execute_operation(Dvd, arg); break; case com_Eq: switch (state) { case c_op_change: processor.set_rop(processor.get_lop()); state = c_exp_done; processor.run_oprtn(); res = processor.get_lop().get_complex(); break; case c_editing: if (processor.is_operation()) { processor.set_rop(TComplex(arg)); state = c_exp_done; processor.run_oprtn(); res = processor.get_lop().get_complex(); } else { processor.set_lop(TComplex(arg)); state = c_exp_done; res = arg; } break; case c_fun_done: if (processor.is_operation()) { processor.run_oprtn(); res = processor.get_lop().get_complex(); } else { processor.set_lop(TComplex(arg)); res = arg; } state = c_exp_done; break; case c_exp_done: if (processor.is_operation()) { processor.run_oprtn(); res = processor.get_lop().get_complex(); } else { processor.set_lop(TComplex(arg)); res = arg; } break; case c_start: res = arg; break;res = arg; default: res = arg; break; } break; case com_MC: memory.clear(); res = arg; break; case com_MS: memory.store(TComplex(arg)); res = arg; break; case com_MR: if (state == c_op_change) { processor.set_rop(memory.extract()); state = c_editing; } res = memory.extract().get_complex(); break; case com_MAdd: memory.add(TComplex(arg)); res = arg; break; } return res; }