19560d06aSjeremylt /// @file 29560d06aSjeremylt /// Test creation, copying, and destruction of a CEED object 39560d06aSjeremylt /// \test Test creation, copying, and destruction of a CEED object 49560d06aSjeremylt #include <ceed.h> 59560d06aSjeremylt 69560d06aSjeremylt int main(int argc, char **argv) { 79560d06aSjeremylt Ceed ceed, ceed_2; 89560d06aSjeremylt 99560d06aSjeremylt CeedInit(argv[1], &ceed); 109560d06aSjeremylt CeedInit("/cpu/self/ref/serial", &ceed_2); 119560d06aSjeremylt 129560d06aSjeremylt CeedReferenceCopy(ceed, &ceed_2); // This destroys the previous ceed_2 13*2b730f8bSJeremy L Thompson if (ceed != ceed_2) printf("Error copying Ceed reference\n"); 149560d06aSjeremylt 159560d06aSjeremylt CeedDestroy(&ceed); 169560d06aSjeremylt 179560d06aSjeremylt CeedMemType type; 189560d06aSjeremylt CeedGetPreferredMemType(ceed_2, &type); // Second reference still valid 199560d06aSjeremylt 209560d06aSjeremylt CeedDestroy(&ceed_2); // Both references should be destroyed 219560d06aSjeremylt return 0; 229560d06aSjeremylt } 23