struct order * getOrderFromStream(FILE * stream){ if(feof(stream)) return 0; char line[MAX_LINE_LEN] = {'\0'}; fgets(line,MAX_LINE_LEN,stream); //fprintf(stdout,"line:\n%s-- +++ --\n",line); char type,temp; float price; unsigned int size,tstamp; char id[MAX_ID_LEN] = {'\0'}; if(sscanf(line,"%u %c %s %c %f %u\n",&tstamp,&temp,id,&type,&price,&size)<6){ if(sscanf(line,"%u %c %s %u\n",&tstamp,&type,id,&size)<4) return 0; return newOrder(0.0,size,type,id,tstamp); } return newOrder(price,size,type,id,tstamp); }
void CSVWorld::Table::moveDownRecord() { if (mEditLock || (mModel->getFeatures() & CSMWorld::IdTableBase::Feature_Constant)) return; QModelIndexList selectedRows = selectionModel()->selectedRows(); if (selectedRows.size()==1) { int row =selectedRows.begin()->row(); if (row<mProxyModel->rowCount()-1) { int row2 = row+1; row = mProxyModel->mapToSource (mProxyModel->index (row, 0)).row(); row2 = mProxyModel->mapToSource (mProxyModel->index (row2, 0)).row(); if (row2<=row) throw std::runtime_error ("Inconsistent row order"); std::vector<int> newOrder (row2-row+1); newOrder[0] = row2-row; newOrder[row2-row] = 0; for (int i=1; i<row2-row; ++i) newOrder[i] = i; mDocument.getUndoStack().push (new CSMWorld::ReorderRowsCommand ( dynamic_cast<CSMWorld::IdTable&> (*mModel), row, newOrder)); } } }
void CSVWorld::Table::moveDownRecord() { QModelIndexList selectedRows = selectionModel()->selectedRows(); if (selectedRows.size()==1) { int row =selectedRows.begin()->row(); if (row<mProxyModel->rowCount()-1) { int row2 = row+1; row = mProxyModel->mapToSource (mProxyModel->index (row, 0)).row(); row2 = mProxyModel->mapToSource (mProxyModel->index (row2, 0)).row(); if (row2<=row) throw std::runtime_error ("Inconsistent row order"); std::vector<int> newOrder (row2-row+1); newOrder[0] = row2-row; newOrder[row2-row] = 0; for (int i=1; i<row2-row; ++i) newOrder[i] = i; mUndoStack.push (new CSMWorld::ReorderRowsCommand (*mModel, row, newOrder)); } } }
void CStrategyGrid::addGrid(int count) { int addcount = count - m_nCount; double price = 0; if(m_TradeDirection==0) { if(m_kp==0) { price = m_beginPrice - (m_nCount / m_N1) * m_J1; } else if(m_kp==1) { price = m_beginPrice + (m_nCount / m_N1) * m_J1; } } else if(m_TradeDirection==1) { if(m_kp==0) { price = m_beginPrice + (m_nCount / m_N1) * m_J1; } else if(m_kp==1) { price = m_beginPrice - (m_nCount / m_N1) * m_J1; } } newOrder(addcount,price); }
void __TestReorderCopy() { size_t numTuples = 10; QVector<size_t> cDims(1, 5); QString name("Source Array"); //make sure that an incorrectly sized order returns a null pointer typename DataArray<T>::Pointer src = DataArray<T>::CreateArray(numTuples, cDims, name, false); QVector<size_t> wrongSize(numTuples + 1); typename DataArray<T>::Pointer copy = boost::dynamic_pointer_cast<DataArray<T> >(src->reorderCopy(wrongSize)); DREAM3D_REQUIRE_EQUAL(copy.get(), 0); // fill reorder vector with same index (using this would be the same result as deep copy) QVector<size_t> newOrder(numTuples); for(size_t i = 0; i < numTuples; i++) { newOrder[i] = i; } //shuffle order std::random_shuffle(newOrder.begin(), newOrder.end()); // First lets try it without allocating any memory copy = boost::dynamic_pointer_cast<DataArray<T> >(src->reorderCopy(newOrder)); //if newOrder is inporperly size a null pointer is returned DREAM3D_REQUIRE_NE(copy.get(), 0); //check sizes DREAM3D_REQUIRED(copy->getNumberOfTuples(), ==, src->getNumberOfTuples() ); DREAM3D_REQUIRED(copy->isAllocated(), ==, src->isAllocated() ); // Create the array again, this time allocating the data and putting in some known data src = DataArray<T>::CreateArray(numTuples, cDims, name, true); for(size_t i = 0; i < src->getSize(); i++) { src->setValue(i, i); } for(size_t i = 0; i < numTuples; i++) { for(size_t j = 0; j < cDims[0]; j++) { src->setComponent(i, j, static_cast<T>(i * cDims[0] + j) ); } } copy = boost::dynamic_pointer_cast<DataArray<T> >(src->reorderCopy(newOrder)); for(size_t i = 0; i < numTuples; i++) { for(size_t j = 0; j < cDims[0]; j++) { T cpy = copy->getComponent(newOrder[i], j); T val = src->getComponent(i, j); DREAM3D_REQUIRE_EQUAL(cpy, val) } } }
vector<int> Anneal::getNextOrder(vector<int> order) { vector<int> newOrder(order); int randomCity = rand() % (dimension - 1) + 1; //generujemy dwie wartoœci ró¿ne od zera oraz od siebie int anotherRandomCity = rand() % (dimension - 1) + 1; while (randomCity == anotherRandomCity) anotherRandomCity = rand() % (dimension - 1) + 1; swap(newOrder[randomCity], newOrder[anotherRandomCity]); return newOrder; }
void ConvolveMatrixEffectConfigWidget::orderChanged(int) { if (!m_effect) { return; } QPoint newOrder(m_orderX->value(), m_orderY->value()); QPoint oldOrder = m_effect->order(); if (newOrder != oldOrder) { m_effect->setOrder(newOrder); emit filterChanged(); } m_targetX->setMaximum(newOrder.x()); m_targetY->setMaximum(newOrder.y()); }
OneD<_T> OneD<_T>::truncateToNonZeros(double zeroEpsilon) const { zeroEpsilon = std::abs(zeroEpsilon); size_t newOrder(0); // Find the highest order non-zero coefficient for (size_t ii = 0, idx = order(); ii <= order(); ++ii, --idx) { if (std::abs((*this)[idx]) > zeroEpsilon) { newOrder = idx; break; } } return truncateTo(newOrder); }
int TWS_TLServer::SendOrder(TLOrder o) { // check our order if (o.symbol=="") return UNKNOWN_SYMBOL; if (!o.isValid()) return INVALID_ORDERSIZE; // create broker-specific objects here Order* order(new Order); order->auxPrice = o.isTrail() ? o.trail : o.stop; order->lmtPrice = o.price; order->orderType = (o.isStop()) ? "STP" : (o.isLimit() ? "LMT" : (o.isTrail() ? "TRAIL" : "MKT")); order->totalQuantity = (long)o.size; order->action = (o.side) ? "BUY" : "SELL"; order->account = o.account; order->tif = o.TIF; order->outsideRth = true; order->orderId = newOrder(o.id,o.account); order->transmit = true; Contract* contract(new Contract); contract->symbol = o.symbol; contract->localSymbol = o.localsymbol!="" ? o.localsymbol : o.symbol; if (o.exchange=="") o.exchange = "SMART"; contract->exchange = o.exchange; contract->secType = o.security; contract->currency = o.currency; // get the TWS session associated with our account EClient* client; if (o.account=="") // if no account specified, get default client = m_link[this->validlinkids[0]]; else // otherwise get the session our account is logged into client = GetOrderSink(o.account); // place our order if (client!=NULL) client->placeOrder(order->orderId,*contract,*order); delete order; delete contract; return OK; }
void PlaceOrderControl::submitOrder() { QUuid requestId; if (this->getStudent() != NULL) { if (!this->getStudent()->getCart()->getItems().empty()) { QVector<qint32> itemIds; for (SellableItem *item: this->getStudent()->getCart()->getItems()) { itemIds.append(item->getId()); } Order newOrder(itemIds, *this->getStudent()->getCreditCardInfo(), *this->getStudent()->getDeliveryInfo()); requestId = requestAPI->submitOrder(newOrder); qDebug() << "PlaceOrderControl::submitOrder: Submitted order request with request ID " << requestId << " to the server..."; } } }
void QgsLayerTreeMapCanvasBridge::setCustomLayerOrder( const QStringList& order ) { if ( mCustomLayerOrder == order ) return; // verify that the new order is correct QStringList defOrder( defaultLayerOrder() ); QStringList newOrder( order ); QStringList sortedNewOrder( order ); qSort( defOrder ); qSort( sortedNewOrder ); if ( defOrder.size() < sortedNewOrder.size() ) { // might contain bad layers, but also duplicates QSet<QString> ids( defOrder.toSet() ); for ( int i = 0; i < sortedNewOrder.size(); i++ ) { if ( !ids.contains( sortedNewOrder[i] ) ) { newOrder.removeAll( sortedNewOrder[i] ); sortedNewOrder.removeAt( i-- ); } } } if ( defOrder != sortedNewOrder ) return; // must be permutation of the default order mCustomLayerOrder = newOrder; emit customLayerOrderChanged( mCustomLayerOrder ); if ( mHasCustomLayerOrder ) deferredSetCanvasLayers(); }
// Constructor from components Foam::labelList Foam::bandCompression(const labelListList& cellCellAddressing) { labelList newOrder(cellCellAddressing.size()); // the business bit of the renumbering SLList<label> nextCell; labelList visited(cellCellAddressing.size()); label currentCell; label cellInOrder = 0; // reset the visited cells list forAll (visited, cellI) { visited[cellI] = 0; } // loop over the cells forAll (visited, cellI) { // find the first cell that has not been visited yet if (visited[cellI] == 0) { currentCell = cellI; // use this cell as a start nextCell.append(currentCell); // loop through the nextCell list. Add the first cell into the // cell order if it has not already been visited and ask for its // neighbours. If the neighbour in question has not been visited, // add it to the end of the nextCell list while (nextCell.size()) { currentCell = nextCell.removeHead(); if (visited[currentCell] == 0) { visited[currentCell] = 1; // add into cellOrder newOrder[cellInOrder] = currentCell; cellInOrder++; // find if the neighbours have been visited const labelList& neighbours = cellCellAddressing[currentCell]; forAll (neighbours, nI) { if (visited[neighbours[nI]] == 0) { // not visited, add to the list nextCell.append(neighbours[nI]); } } } } }
int main(int argc, char *argv[]) { // erstelle irgendwelche rabatte int i, i1; for(i = 0; i < x; i++) { for(i1 = 0; i1 < y; i1++) { discounts[i][i1] = rand() % 100; } } while(option != 3) { printf("\nOptionen:\n"); printf("1: Neue Produkte eingeben\n"); printf("2: Neue Kunden eingeben\n"); printf("3: Beenden\n\n"); printf("Weitere Optionen\n"); printf("4: Alle Produkte auflisten\n"); printf("5: Alle Personen auflisten\n"); printf("6: Alle Aufträge auflisten\n"); printf("7: Neuen Auftrag anlegen\n"); printf("8: Auftrag bearbeiten\n"); printf("9: Auftrag löschen\n"); printf("10: Person bearbeiten\n"); printf("11: Produkt bearbeiten\n"); printf("12: Nach Produkt suchen\n"); printf("13: Nach Kunde suchen\n"); printf("14. Rekusiver Warenwert\n"); printf("15. Iterativer Warenwert\n"); printf("16. Rabattliste"); printf("\nAuswahl: "); scanf("%i", &option); Order o; Product p; Customer c; switch(option) { case 1: while(decision != 'n') { p = newProduct(); getchar(); printf("Wollen Sie noch einen Eintrag erstellen (j/n)?\n"); scanf("%c", &decision); if(max_products == p.id + 1) resizeProductArray(&product, &max_products); product[p.id] = p; productIndex++; } decision = 'j'; break; case 2: while(decision != 'n') { Customer c = newCustomer(); getchar(); printf("Wollen Sie noch einen Eintrag erstellen (j/n)?\n"); scanf("%c", &decision); if(max_customer == c.id + 1) resizeCustomerArray(&customer, &max_customer); customer[c.id] = c; customerIndex++; } decision = 'j'; break; case 3: printf("\nBeendet..\n"); break; case 4: printProducts(product, productIndex); break; case 5: printCustomer(customer, customerIndex); break; case 6: printOrders(order, orderIndex); break; case 7: o = newOrder(); if(max_order == c.id + 1) resizeOrderArray(&order, &max_order); order[o.id] = o; orderIndex++; break; case 8: // auftrag bearbeiten break; case 9: // auftrag loeschen break; case 10: c = searchCustomer(customer, customerIndex); c = editCustomer(c); customer[c.id] = c; break; case 11: p = searchProduct(product, productIndex); p = editProduct(p); product[p.id] = p; break; case 12: p = searchProduct(product, productIndex); printf("\nArtikelnummer: %i\n", p.id+1); printf("Artikelname: %s\n", p.name); printf("Artikelpreis: %0.2f\n", p.price); printf("Lagerbestand: %i\n", p.amount); break; case 13: c = searchCustomer(customer, customerIndex); printf("\nKundennummer: %i\n", c.id); printf("Kundenname: %s\n", c.name); break; case 14: printf("\nAktueller Warenwert: "); printf("%0.2f Euro (rekursiv)\n", recursiveProductValue(product, productIndex-1)); break; case 15: printf("\nAktueller Warenwert: "); printf("%0.2f Euro (iterativ)\n", iterativeProductValue(product, productIndex-1)); break; case 16: printf("Produkt/Anzahl"); for(i = 0; i < x; i++) { for(i1 = 0; i1 < y; i1++) { printf("[%02i]", discounts[i][i1]); } printf("\n"); } break; default: break; } } }
void CounterInterface::onClick_pbSaveOrdered() { if (orderIdProduct.length() == 0 ){ QMessageBox::warning(this, tr("Selecione um produto"), tr("O pedido deve ter pelo menos um produto"), tr("Voltar")); searchProduct->eSearch->Clear(); searchProduct->eSearch->setFocus(); return; } if (wPaymentView->totalValueOrder > wPaymentView->totalPaid){ int op = QMessageBox::question(this, tr("Preço pago insuficiente"), tr("O valor pago é insuficiente para pagar o pedido.\nDeseja salvar o pedido dessa forma?"), tr("Sim"), tr("Não")); if (op == 1) return; } bool client = true; if (wPaymentView->idClient == 0 && wPaymentView->ePhone->isEmpty() && wPaymentView->ePhoneBusiness->isEmpty()){ client = false; } // se o cliente tiver sido selecionado, ele vai verificar se o cliente se foi alterado if (! wPaymentView->idClient == 0){ wPaymentView->dataClientF.clear(); if (wPaymentView->typeClient == wPaymentView->NORMAL){ wPaymentView->dataClientF << QString::number(wPaymentView->idClient) << wPaymentView->eName->text() << wPaymentView->ePhone->text() << wPaymentView->eStreet->text() << wPaymentView->eNumber->text() << wPaymentView->eComplement->text() << wPaymentView->eDistrict->text() << wPaymentView->eCep->text() << QString::number(wPaymentView->DSBShipping->value()) << wPaymentView->teNotes->toPlainText(); }else{ wPaymentView->dataClientF << QString::number(wPaymentView->idClient) << wPaymentView->eNameContactBusiness->text() << wPaymentView->eNameBusiness->text() << wPaymentView->eFantasyNameBusiness->text() << wPaymentView->eCNPJBusiness->text() << wPaymentView->ePhoneBusiness->text() << wPaymentView->eStreetBusiness->text() << wPaymentView->eNumberBusiness->text() << wPaymentView->eComplementBusiness->text() << wPaymentView->eDistrictBusiness->text() << wPaymentView->eCepBusiness->text() << QString::number(wPaymentView->DSBShippingBusiness->value()) << wPaymentView->teNotesBusiness->toPlainText(); } bool equal = true; for (int i = 0; i < wPaymentView->dataClientI.length(); i++){ if (wPaymentView->dataClientI[i] != wPaymentView->dataClientF[i]){ equal = false; break; } } if (! equal){ int op = QMessageBox::question(this, tr("Alteração do cliente."), tr("Tiveram alterações no cliente.\nDeseja salvá-las?"), "Sim", "Não"); if (op == 0) if (! wPaymentView->order->updateClient(wPaymentView->dataClientF)) qDebug() << "[CounterInterface] [Botão Salvar Pedido]"; } } if ((!(wPaymentView->ePhone->isEmpty() && wPaymentView->ePhoneBusiness->isEmpty())) && wPaymentView->idClient == 0){ if (wPaymentView->typeClient == wPaymentView->NORMAL){ if (isAvailable()){ //seta os valores wPaymentView->idClient = order->nextIdClient(); wPaymentView->order->phone = wPaymentView->ePhone->text(); wPaymentView->order->name = wPaymentView->eName->text(); wPaymentView->order->cep = wPaymentView->eCep->text(); wPaymentView->order->street = wPaymentView->eStreet->text(); wPaymentView->order->number = wPaymentView->eNumber->text(); wPaymentView->order->complement = wPaymentView->eComplement->text(); wPaymentView->order->district = wPaymentView->eDistrict->text(); wPaymentView->order->shipping = wPaymentView->DSBShipping->value(); wPaymentView->order->note = wPaymentView->teNotes->toPlainText(); wPaymentView->order->insertClient(); } }else{ if (isAvailableBusiness()){ //seta os valores wPaymentView->idClient = wPaymentView->order->nextIdClient(); wPaymentView->order->phone = wPaymentView->ePhoneBusiness->text(); wPaymentView->order->nameRespondible = wPaymentView->eNameContactBusiness->text(); wPaymentView->order->cep = wPaymentView->eCepBusiness->text(); wPaymentView->order->street = wPaymentView->eStreetBusiness->text(); wPaymentView->order->number = wPaymentView->eNumberBusiness->text(); wPaymentView->order->complement = wPaymentView->eComplementBusiness->text(); wPaymentView->order->district = wPaymentView->eDistrictBusiness->text(); wPaymentView->order->shipping = wPaymentView->DSBShipping->value(); wPaymentView->order->note = wPaymentView->teNotesBusiness->toPlainText(); wPaymentView->order->corporateName = wPaymentView->eNameBusiness->text(); wPaymentView->order->CNPJ = wPaymentView->eCNPJBusiness->text(); wPaymentView->order->fantasyName = wPaymentView->eFantasyNameBusiness->text(); wPaymentView->order->insertClient(); } } } wPaymentView->order->isAdd = isAdd; wPaymentView->order->typeClient = wPaymentView->typeClient; wPaymentView->order->idClient = wPaymentView->idClient; wPaymentView->order->totalValueOrderProducts = wPaymentView->totalValueOrder; wPaymentView->order->valuePaid = wPaymentView->totalPaid; wPaymentView->order->valueShipping = wPaymentView->DSBShipping->value(); wPaymentView->order->orderQuantity = orderQuantity; wPaymentView->order->orderValues = orderValues; wPaymentView->order->orderSizes = orderSizes; wPaymentView->order->orderPartProduct = orderPartProduct; wPaymentView->order->orderIdProduct = orderIdProduct; wPaymentView->order->orderNameProduct = orderNameProduct; wPaymentView->order->orderNoteProduct = orderNoteProduct; QList<QString> orderPaymentForm; QList<QString> orderPaymentFormValue; if (wPaymentView->tablePaymentForm->model()->rowCount() > 0){ for (int i = 0; i < wPaymentView->tablePaymentForm->model()->rowCount(); i++){ orderPaymentForm << wPaymentView->tablePaymentForm->model()->index(i, 0).data().toString(); orderPaymentFormValue << wPaymentView->tablePaymentForm->model()->index(i, 1).data().toString(); } } wPaymentView->order->orderPaymentForm = orderPaymentForm; wPaymentView->order->orderPaymentFormValue = orderPaymentFormValue; wPaymentView->order->typeOrder = Order::COUNTER; if (wPaymentView->order->insertOrder()) { int op = QMessageBox::question(this, tr("Salvo com sucesso"), tr("Pedido salvo com sucesso.\nDeseja imprimir o pedido agora?"), tr("Sim"), tr("Não")); if (op == 0) html.print(html.createHTMLOrder(order->idOrder.toInt())); } emit newOrder(); clearOrder(); }