//************************************ // Method: operator-= // FullName: subtract all element of image by corresponding element in right operand // Access: // Returns: // Qualifier: // Parameter: //************************************ const C2DRaw& C2DRaw::operator-=(const C2DRaw& opright) { ASSERT(opright.IsValid() && IsValid()); for(int i=0; i<GetNumberOfRow(); i++) { for(int j=0; j< GetNumberOfCol(); j++) { if ((GetElementAt(i,j) - opright.GetElementAt(i,j)) < ELEMENT_MIN) { SetElementAt(i, j, ELEMENT_MIN); } else { SetElementAt(i, j, GetElementAt(i,j) - opright.GetElementAt(i,j)); } } } return *this; }
NS_IMETHODIMP HTMLFormControlsCollection::Item(uint32_t aIndex, nsIDOMNode** aReturn) { nsISupports* item = GetElementAt(aIndex); if (!item) { *aReturn = nullptr; return NS_OK; } return CallQueryInterface(item, aReturn); }
bool Add(void* value) { size_t new_size = m_current_size_ + 1; if (new_size > m_max_size_) { DXFW_TRACE(__FILE__, __LINE__, true, "Attempted to add an element to a full structured buffer with max size %d", m_max_size_); return false; } std::memcpy(GetElementAt(m_current_size_), value, m_element_size_); m_current_size_ = new_size; return true; }
//************************************ // Method: operator*= // FullName: multiple all element of image with corresponding element in right operand // Access: // Returns: // Qualifier: // Parameter: //************************************ const C2DRaw& C2DRaw::operator*=(const C2DRaw& opright) { ASSERT(opright.IsValid() && IsValid()); for(int i=0; i<GetNumberOfRow(); i++) { // TEMPORARY [12/19/2007 QUYPS] for(int j=0; j< GetNumberOfCol(); j++) { if ((GetElementAt(i,j) * opright.GetElementAt(i,j)) > ELEMENT_MAX) { SetElementAt(i, j, ELEMENT_MAX); } else { SetElementAt(i, j, GetElementAt(i,j) * opright.GetElementAt(i,j)); } } } return *this; }
//************************************ // Method: operator-= // FullName: subtract by a constant value // Access: // Returns: // Qualifier: // Parameter: //************************************ const C2DRaw& C2DRaw::operator-=(const INT nRight) { ASSERT(IsValid()); element eRight(nRight); for(int i=0; i<GetNumberOfRow(); i++) { for(int j=0; j< GetNumberOfCol(); j++) { if ((GetElementAt(i,j) - eRight) < ELEMENT_MIN) { SetElementAt(i, j, ELEMENT_MIN); } else { SetElementAt(i, j, GetElementAt(i,j) - eRight); } } } return *this; }
//************************************ // Method: operator*= // FullName: multiple with a constant value // Access: // Returns: // Qualifier: // Parameter: //************************************ const C2DRaw& C2DRaw::operator*=(const INT nRight) { ASSERT(IsValid()); element eRight(nRight); for(int i=0; i<GetNumberOfRow(); i++) { for(int j=0; j< GetNumberOfCol(); j++) { // TEMPORARY [12/19/2007 QUYPS] if ((GetElementAt(i,j) * eRight) > ELEMENT_MAX) { SetElementAt(i, j, ELEMENT_MAX); } else { SetElementAt(i, j, GetElementAt(i,j) * eRight); } } } return *this; }
void Dictionary::RemoveAt(unsigned int position) { KeyPair item = KeyPair(); if (GetElementAt(position, &item)) { if (RemoveFromDict(&item)) { throw new exception("NO BORRADO"); } } else { throw new exception("NO TOY"); } }
//************************************ // Method: operator- // FullName: unary invert operator: element = 255 - element // Access: // Returns: // Qualifier: // Parameter: //************************************ const C2DRaw& C2DRaw::operator-() const { ASSERT(IsValid()); C2DRaw temp(m_nRows, m_nColums); element eMax(ELEMENT_MAX); for(int i=0; i<temp.GetNumberOfRow(); i++) { for(int j=0; j< temp.GetNumberOfCol(); j++) { temp.SetElementAt(i, j, eMax - GetElementAt(i,j)); } } return temp; }
void MultiBoxView::Draw(BRect urect) { UpdateProperties(); BRect rect; int32 element; for (int32 i=0; i<numcols; i++) { for (int32 j=0; j<numrows; j++) { //_sPrintf("i: %d, j: %d\n", i, j); element = GetElementAt(j, i); GetRectAt(element, &rect); if (urect.Intersects(rect)) { DrawContentBox(element); } } } // clear bottom area of view rect = Bounds(); rect.top = numrows * rowheight + 1; SetHighColor(ui_color(B_PANEL_BACKGROUND_COLOR)); FillRect(rect); }
int main() { SimpleHeap aHeap; SimpleList elements; long input, i; double key; long *element; tHeapElement *extractedElement; char strInp[256]; InitHeap(&aHeap, 10); while (1) { printf("1. Add element.\n"); printf("2. Extract min element.\n"); printf("3. Extract element at index.\n"); printf("4. Exit.\n"); scanf("%ld", &input); if (input == 4) { break; } if (1 == input) { printf("Enter element key:\n"); scanf("%lf", &key); printf("Enter element itself (long number):\n"); scanf("%ld", &input); element = malloc(sizeof(long)); if (!element) printf("element error\n"); *element = input; if (!AddElementToHeap(&aHeap, key, element, NULL)) printf("Added new element successfully\n"); else { printf("Failed to add element, probably memory problems...\n"); break; } } else if (2 == input) { printf("Extracting min element...\n"); extractedElement = ExtractMinElement(&aHeap, NULL); if (extractedElement) { printf("Element key:%lf, element itself:%ld.\n", extractedElement->key, *(long*) extractedElement->element); free(extractedElement->element); free(extractedElement); } else printf("No elements in heap.\n"); } else if (3 == input) { printf("Enter element index:\n"); scanf("%ld", &input); extractedElement = PopHeapElementAtIndex(&aHeap, input, NULL); if (!extractedElement) printf("Index out of bounds.\n"); else { printf("Element key:%lf, element itself:%ld\n", extractedElement->key, *(long*) extractedElement->element); free(extractedElement->element); free(extractedElement); } } printf("Current heap keys:\n"); elements = aHeap.elements; for (i = 0; i < elements.currentNum; ++i) printf("%lf ", ((tHeapElement*)GetElementAt(&elements, i))->key); printf("\n"); } DisposeHeapWithElements(&aHeap); return 0; }