| ceed-operator.c (be301fac98d34690f0baddc646699b7c1181eb74) | ceed-operator.c (db002c03923317a1c3814dcd861330002c00a8ea) |
|---|---|
| 1// Copyright (c) 2017-2022, Lawrence Livermore National Security, LLC and other CEED contributors. 2// All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 3// 4// SPDX-License-Identifier: BSD-2-Clause 5// 6// This file is part of CEED: http://github.com/ceed 7 8#include <ceed-impl.h> --- 521 unchanged lines hidden (view full) --- 530 531 CeedCall(CeedGetObjectDelegate(ceed, &delegate, "Operator")); 532 CeedCheck(delegate, ceed, CEED_ERROR_UNSUPPORTED, "Backend does not support OperatorCreate"); 533 CeedCall(CeedOperatorCreate(delegate, qf, dqf, dqfT, op)); 534 return CEED_ERROR_SUCCESS; 535 } 536 537 CeedCheck(qf && qf != CEED_QFUNCTION_NONE, ceed, CEED_ERROR_MINOR, "Operator must have a valid QFunction."); | 1// Copyright (c) 2017-2022, Lawrence Livermore National Security, LLC and other CEED contributors. 2// All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 3// 4// SPDX-License-Identifier: BSD-2-Clause 5// 6// This file is part of CEED: http://github.com/ceed 7 8#include <ceed-impl.h> --- 521 unchanged lines hidden (view full) --- 530 531 CeedCall(CeedGetObjectDelegate(ceed, &delegate, "Operator")); 532 CeedCheck(delegate, ceed, CEED_ERROR_UNSUPPORTED, "Backend does not support OperatorCreate"); 533 CeedCall(CeedOperatorCreate(delegate, qf, dqf, dqfT, op)); 534 return CEED_ERROR_SUCCESS; 535 } 536 537 CeedCheck(qf && qf != CEED_QFUNCTION_NONE, ceed, CEED_ERROR_MINOR, "Operator must have a valid QFunction."); |
| 538 |
|
| 538 CeedCall(CeedCalloc(1, op)); | 539 CeedCall(CeedCalloc(1, op)); |
| 539 (*op)->ceed = ceed; 540 CeedCall(CeedReference(ceed)); | 540 CeedCall(CeedReferenceCopy(ceed, &(*op)->ceed)); |
| 541 (*op)->ref_count = 1; | 541 (*op)->ref_count = 1; |
| 542 (*op)->qf = qf; | |
| 543 (*op)->input_size = -1; 544 (*op)->output_size = -1; | 542 (*op)->input_size = -1; 543 (*op)->output_size = -1; |
| 545 CeedCall(CeedQFunctionReference(qf)); 546 if (dqf && dqf != CEED_QFUNCTION_NONE) { 547 (*op)->dqf = dqf; 548 CeedCall(CeedQFunctionReference(dqf)); 549 } 550 if (dqfT && dqfT != CEED_QFUNCTION_NONE) { 551 (*op)->dqfT = dqfT; 552 CeedCall(CeedQFunctionReference(dqfT)); 553 } | 544 CeedCall(CeedQFunctionReferenceCopy(qf, &(*op)->qf)); 545 if (dqf && dqf != CEED_QFUNCTION_NONE) CeedCall(CeedQFunctionReferenceCopy(dqf, &(*op)->dqf)); 546 if (dqfT && dqfT != CEED_QFUNCTION_NONE) CeedCall(CeedQFunctionReferenceCopy(dqfT, &(*op)->dqfT)); |
| 554 CeedCall(CeedQFunctionAssemblyDataCreate(ceed, &(*op)->qf_assembled)); 555 CeedCall(CeedCalloc(CEED_FIELD_MAX, &(*op)->input_fields)); 556 CeedCall(CeedCalloc(CEED_FIELD_MAX, &(*op)->output_fields)); 557 CeedCall(ceed->OperatorCreate(*op)); 558 return CEED_ERROR_SUCCESS; 559} 560 561/** --- 13 unchanged lines hidden (view full) --- 575 576 if (delegate) { 577 CeedCall(CeedCompositeOperatorCreate(delegate, op)); 578 return CEED_ERROR_SUCCESS; 579 } 580 } 581 582 CeedCall(CeedCalloc(1, op)); | 547 CeedCall(CeedQFunctionAssemblyDataCreate(ceed, &(*op)->qf_assembled)); 548 CeedCall(CeedCalloc(CEED_FIELD_MAX, &(*op)->input_fields)); 549 CeedCall(CeedCalloc(CEED_FIELD_MAX, &(*op)->output_fields)); 550 CeedCall(ceed->OperatorCreate(*op)); 551 return CEED_ERROR_SUCCESS; 552} 553 554/** --- 13 unchanged lines hidden (view full) --- 568 569 if (delegate) { 570 CeedCall(CeedCompositeOperatorCreate(delegate, op)); 571 return CEED_ERROR_SUCCESS; 572 } 573 } 574 575 CeedCall(CeedCalloc(1, op)); |
| 583 (*op)->ceed = ceed; 584 CeedCall(CeedReference(ceed)); | 576 CeedCall(CeedReferenceCopy(ceed, &(*op)->ceed)); |
| 585 (*op)->ref_count = 1; 586 (*op)->is_composite = true; 587 CeedCall(CeedCalloc(CEED_COMPOSITE_MAX, &(*op)->sub_operators)); 588 (*op)->input_size = -1; 589 (*op)->output_size = -1; 590 | 577 (*op)->ref_count = 1; 578 (*op)->is_composite = true; 579 CeedCall(CeedCalloc(CEED_COMPOSITE_MAX, &(*op)->sub_operators)); 580 (*op)->input_size = -1; 581 (*op)->output_size = -1; 582 |
| 591 if (ceed->CompositeOperatorCreate) { 592 CeedCall(ceed->CompositeOperatorCreate(*op)); 593 } | 583 if (ceed->CompositeOperatorCreate) CeedCall(ceed->CompositeOperatorCreate(*op)); |
| 594 return CEED_ERROR_SUCCESS; 595} 596 597/** 598 @brief Copy the pointer to a CeedOperator. 599 600 Both pointers should be destroyed with `CeedOperatorDestroy()`. 601 --- 1032 unchanged lines hidden --- | 584 return CEED_ERROR_SUCCESS; 585} 586 587/** 588 @brief Copy the pointer to a CeedOperator. 589 590 Both pointers should be destroyed with `CeedOperatorDestroy()`. 591 --- 1032 unchanged lines hidden --- |