15a86f033Sjeremylt /// @file 25a86f033Sjeremylt /// Test creation and view of an element restriction 35a86f033Sjeremylt /// \test Test creation and view of an element restriction 45a86f033Sjeremylt #include <ceed.h> 55a86f033Sjeremylt 65a86f033Sjeremylt int main(int argc, char **argv) { 75a86f033Sjeremylt Ceed ceed; 8d1d35e2fSjeremylt CeedInt num_elem = 3; 9d1d35e2fSjeremylt CeedInt ind[2 * num_elem]; 104fee36f0SJeremy L Thompson CeedElemRestriction elem_restriction; 115a86f033Sjeremylt 125a86f033Sjeremylt CeedInit(argv[1], &ceed); 135a86f033Sjeremylt 14d1d35e2fSjeremylt for (CeedInt i = 0; i < num_elem; i++) { 155a86f033Sjeremylt ind[2 * i + 0] = i; 165a86f033Sjeremylt ind[2 * i + 1] = i + 1; 175a86f033Sjeremylt } 184fee36f0SJeremy L Thompson CeedElemRestrictionCreate(ceed, num_elem, 2, 1, 1, num_elem + 1, CEED_MEM_HOST, CEED_USE_POINTER, ind, &elem_restriction); 195a86f033Sjeremylt 204fee36f0SJeremy L Thompson CeedElemRestrictionView(elem_restriction, stdout); 21*82a9f6a5SJeremy L Thompson 22*82a9f6a5SJeremy L Thompson // Check tabs and CeedObject functionality 23*82a9f6a5SJeremy L Thompson { 24*82a9f6a5SJeremy L Thompson CeedElemRestriction elem_restriction_copy = NULL; 25*82a9f6a5SJeremy L Thompson 26*82a9f6a5SJeremy L Thompson CeedElemRestrictionReferenceCopy(elem_restriction, &elem_restriction_copy); 27*82a9f6a5SJeremy L Thompson CeedElemRestrictionSetNumViewTabs(elem_restriction_copy, 1); 28*82a9f6a5SJeremy L Thompson CeedObjectView((CeedObject)elem_restriction_copy, stdout); 29*82a9f6a5SJeremy L Thompson CeedObjectDestroy((CeedObject *)&elem_restriction_copy); 30*82a9f6a5SJeremy L Thompson } 315a86f033Sjeremylt 324fee36f0SJeremy L Thompson CeedElemRestrictionDestroy(&elem_restriction); 335a86f033Sjeremylt CeedDestroy(&ceed); 345a86f033Sjeremylt return 0; 355a86f033Sjeremylt } 36