Lines Matching refs:nitem
14 PetscBagItem nitem = bag->bagitems; in PetscBagRegister_Private() local
16 while (nitem->next) nitem = nitem->next; in PetscBagRegister_Private()
17 nitem->next = item; in PetscBagRegister_Private()
536 PetscBagItem nitem; in PetscBagDestroy() local
541 nitem = (*bag)->bagitems; in PetscBagDestroy()
542 while (nitem) { in PetscBagDestroy()
543 PetscBagItem item = nitem->next; in PetscBagDestroy()
545 if (nitem->list) PetscCall(PetscStrArrayDestroy(&nitem->list)); in PetscBagDestroy()
546 PetscCall(PetscFree(nitem)); in PetscBagDestroy()
547 nitem = item; in PetscBagDestroy()
573 PetscBagItem nitem = bag->bagitems; in PetscBagSetFromOptions() local
583 while (nitem) { in PetscBagSetFromOptions()
586 PetscCall(PetscStrlcat(name, nitem->name, sizeof(name))); in PetscBagSetFromOptions()
587 …if (nitem->dtype == PETSC_CHAR) { /* special handling for fortran required? [due to space padding … in PetscBagSetFromOptions()
588 char *value = ((char *)bag) + nitem->offset; in PetscBagSetFromOptions()
589 PetscCall(PetscOptionsString(name, nitem->help, "", value, value, nitem->msize, NULL)); in PetscBagSetFromOptions()
590 } else if (nitem->dtype == PETSC_REAL) { in PetscBagSetFromOptions()
591 PetscReal *value = (PetscReal *)(((char *)bag) + nitem->offset); in PetscBagSetFromOptions()
592 if (nitem->msize == 1) { in PetscBagSetFromOptions()
593 PetscCall(PetscOptionsReal(name, nitem->help, "", *value, value, NULL)); in PetscBagSetFromOptions()
595 n = nitem->msize; in PetscBagSetFromOptions()
596 PetscCall(PetscOptionsRealArray(name, nitem->help, "", value, &n, NULL)); in PetscBagSetFromOptions()
598 } else if (nitem->dtype == PETSC_SCALAR) { in PetscBagSetFromOptions()
599 PetscScalar *value = (PetscScalar *)(((char *)bag) + nitem->offset); in PetscBagSetFromOptions()
600 PetscCall(PetscOptionsScalar(name, nitem->help, "", *value, value, NULL)); in PetscBagSetFromOptions()
601 } else if (nitem->dtype == PETSC_INT) { in PetscBagSetFromOptions()
602 PetscInt *value = (PetscInt *)(((char *)bag) + nitem->offset); in PetscBagSetFromOptions()
603 if (nitem->msize == 1) { in PetscBagSetFromOptions()
604 PetscCall(PetscOptionsInt(name, nitem->help, "", *value, value, NULL)); in PetscBagSetFromOptions()
606 n = nitem->msize; in PetscBagSetFromOptions()
607 PetscCall(PetscOptionsIntArray(name, nitem->help, "", value, &n, NULL)); in PetscBagSetFromOptions()
609 } else if (nitem->dtype == PETSC_ENUM) { in PetscBagSetFromOptions()
610 PetscEnum *value = (PetscEnum *)(((char *)bag) + nitem->offset); in PetscBagSetFromOptions()
612 while (nitem->list[i++]); in PetscBagSetFromOptions()
613 …PetscCall(PetscOptionsEnum(name, nitem->help, nitem->list[i - 3], (const char *const *)nitem->list… in PetscBagSetFromOptions()
614 } else if (nitem->dtype == PETSC_BOOL) { in PetscBagSetFromOptions()
615 PetscBool *value = (PetscBool *)(((char *)bag) + nitem->offset); in PetscBagSetFromOptions()
616 if (nitem->msize == 1) { in PetscBagSetFromOptions()
617 PetscCall(PetscOptionsBool(name, nitem->help, "", *value, value, NULL)); in PetscBagSetFromOptions()
619 n = nitem->msize; in PetscBagSetFromOptions()
620 PetscCall(PetscOptionsBoolArray(name, nitem->help, "", value, &n, NULL)); in PetscBagSetFromOptions()
623 nitem = nitem->next; in PetscBagSetFromOptions()
651 PetscBagItem nitem = bag->bagitems; in PetscBagView() local
664 while (nitem) { in PetscBagView()
665 if (nitem->dtype == PETSC_CHAR) { in PetscBagView()
666 char *value = ((char *)bag) + nitem->offset; in PetscBagView()
667 …char tmp = value[nitem->msize - 1]; /* special handling for fortran chars without n… in PetscBagView()
668 value[nitem->msize - 1] = 0; in PetscBagView()
669 PetscCall(PetscViewerASCIIPrintf(view, " %s = %s; %s\n", nitem->name, value, nitem->help)); in PetscBagView()
670 value[nitem->msize - 1] = tmp; in PetscBagView()
671 } else if (nitem->dtype == PETSC_REAL) { in PetscBagView()
672 PetscReal *value = (PetscReal *)(((char *)bag) + nitem->offset); in PetscBagView()
674 PetscCall(PetscViewerASCIIPrintf(view, " %s = ", nitem->name)); in PetscBagView()
675 …for (i = 0; i < nitem->msize; i++) PetscCall(PetscViewerASCIIPrintf(view, "%g ", (double)value[i])… in PetscBagView()
676 PetscCall(PetscViewerASCIIPrintf(view, "; %s\n", nitem->help)); in PetscBagView()
677 } else if (nitem->dtype == PETSC_SCALAR) { in PetscBagView()
678 PetscScalar value = *(PetscScalar *)(((char *)bag) + nitem->offset); in PetscBagView()
681 …ntf(view, " %s = %g + %gi; %s\n", nitem->name, (double)PetscRealPart(value), (double)PetscImagina… in PetscBagView()
683 …all(PetscViewerASCIIPrintf(view, " %s = %g; %s\n", nitem->name, (double)PetscRealPart(value), nit… in PetscBagView()
686 …PetscCall(PetscViewerASCIIPrintf(view, " %s = %g; %s\n", nitem->name, (double)value, nitem->help)… in PetscBagView()
688 } else if (nitem->dtype == PETSC_INT) { in PetscBagView()
689 PetscInt i, *value = (PetscInt *)(((char *)bag) + nitem->offset); in PetscBagView()
690 PetscCall(PetscViewerASCIIPrintf(view, " %s = ", nitem->name)); in PetscBagView()
691 …for (i = 0; i < nitem->msize; i++) PetscCall(PetscViewerASCIIPrintf(view, "%" PetscInt_FMT " ", va… in PetscBagView()
692 PetscCall(PetscViewerASCIIPrintf(view, "; %s\n", nitem->help)); in PetscBagView()
693 } else if (nitem->dtype == PETSC_BOOL) { in PetscBagView()
694 PetscBool *value = (PetscBool *)(((char *)bag) + nitem->offset); in PetscBagView()
696 PetscCall(PetscViewerASCIIPrintf(view, " %s = ", nitem->name)); in PetscBagView()
697 for (i = 0; i < nitem->msize; i++) { in PetscBagView()
700 …Boolean value for %s %s is corrupt; integer value %" PetscInt_FMT, nitem->name, nitem->help, (Pets… in PetscBagView()
703 PetscCall(PetscViewerASCIIPrintf(view, "; %s\n", nitem->help)); in PetscBagView()
704 } else if (nitem->dtype == PETSC_ENUM) { in PetscBagView()
705 PetscEnum value = *(PetscEnum *)(((char *)bag) + nitem->offset); in PetscBagView()
707 while (nitem->list[i++]); in PetscBagView()
708 …iewerASCIIPrintf(view, " %s = %s; (%s) %s\n", nitem->name, nitem->list[value], nitem->list[i - 3]… in PetscBagView()
710 nitem = nitem->next; in PetscBagView()
721 while (nitem) { in PetscBagView()
722 PetscCall(PetscViewerBinaryWrite(view, &nitem->offset, 1, PETSC_INT)); in PetscBagView()
723 dtype = (PetscInt)nitem->dtype; in PetscBagView()
725 PetscCall(PetscViewerBinaryWrite(view, nitem->name, PETSC_BAG_NAME_LENGTH, PETSC_CHAR)); in PetscBagView()
726 PetscCall(PetscViewerBinaryWrite(view, nitem->help, PETSC_BAG_HELP_LENGTH, PETSC_CHAR)); in PetscBagView()
727 PetscCall(PetscViewerBinaryWrite(view, &nitem->msize, 1, PETSC_INT)); in PetscBagView()
729 … PetscCall(PetscViewerBinaryWrite(view, (char *)bag + nitem->offset, nitem->msize, nitem->dtype)); in PetscBagView()
730 …= PETSC_ENUM) PetscCall(PetscViewerBinaryWriteStringArray(view, (const char *const *)nitem->list)); in PetscBagView()
731 nitem = nitem->next; in PetscBagView()
810 PetscBagItem nitem; in PetscBagLoad() local
831 nitem = bag->bagitems; in PetscBagLoad()
841 … PetscCall(PetscViewerBinaryRead(view, ((char *)bag) + nitem->offset, msize, NULL, PETSC_CHAR)); in PetscBagLoad()
843 … PetscCall(PetscViewerBinaryRead(view, ((char *)bag) + nitem->offset, msize, NULL, PETSC_REAL)); in PetscBagLoad()
845 PetscCall(PetscViewerBinaryRead(view, ((char *)bag) + nitem->offset, 1, NULL, PETSC_SCALAR)); in PetscBagLoad()
847 PetscCall(PetscViewerBinaryRead(view, ((char *)bag) + nitem->offset, msize, NULL, PETSC_INT)); in PetscBagLoad()
849 … PetscCall(PetscViewerBinaryRead(view, ((char *)bag) + nitem->offset, msize, NULL, PETSC_BOOL)); in PetscBagLoad()
851 PetscCall(PetscViewerBinaryRead(view, ((char *)bag) + nitem->offset, 1, NULL, PETSC_ENUM)); in PetscBagLoad()
856 nitem = nitem->next; in PetscBagLoad()
1033 PetscBagItem nitem = bag->bagitems; in PetscBagGetNames() local
1038 for (PetscInt n = 0; nitem; ++n, nitem = nitem->next) names[n] = nitem->name; in PetscBagGetNames()