Arcane  4.1.12.0
User documentation
Loading...
Searching...
No Matches
ICaseFunctionProvider.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2026 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* ICaseFunctionProvider.h (C) 2000-2023 */
9/* */
10/* Interface of a service providing user functions for the dataset. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_ICASEFUNCTIONPROVIDER_H
13#define ARCANE_ICASEFUNCTIONPROVIDER_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22namespace Arcane
23{
24
25/*---------------------------------------------------------------------------*/
26/*---------------------------------------------------------------------------*/
27
28/*!
29 * \brief Interface of a service providing user functions
30 * for the JDD.
31 *
32 * \ingroup CaseOption
33 */
34class ARCANE_CORE_EXPORT ICaseFunctionProvider
35{
36 public:
37
38 virtual ~ICaseFunctionProvider() = default; //!< Releases resources
39
40 public:
41
42 /*!
43 * \brief Registers the functions provided by this service in \a cm.
44 */
45 virtual void registerCaseFunctions(ICaseMng* cm) = 0;
46};
47
48/*---------------------------------------------------------------------------*/
49/*---------------------------------------------------------------------------*/
50
51/*!
52 * \brief Interface of a service providing user functions
53 * for the JDD.
54 *
55 * \ingroup CaseOption
56 */
57class ARCANE_CORE_EXPORT ICaseFunctionDotNetProvider
58{
59 public:
60
61 virtual ~ICaseFunctionDotNetProvider() = default; //!< Releases resources
62
63 public:
64
65 /*!
66 * \brief Registers the functions of a '.Net' class in \a cm.
67 */
69 const String& assembly_name,
70 const String& class_name) = 0;
71};
72
73/*---------------------------------------------------------------------------*/
74/*---------------------------------------------------------------------------*/
75
76} // namespace Arcane
77
78/*---------------------------------------------------------------------------*/
79/*---------------------------------------------------------------------------*/
80
81#endif
Declarations of types used in Arcane.
Interface of a service providing user functions for the JDD.
virtual void registerCaseFunctions(ICaseMng *cm, const String &assembly_name, const String &class_name)=0
Registers the functions of a '.Net' class in cm.
virtual ~ICaseFunctionDotNetProvider()=default
Releases resources.
Interface of a service providing user functions for the JDD.
virtual ~ICaseFunctionProvider()=default
Releases resources.
virtual void registerCaseFunctions(ICaseMng *cm)=0
Registers the functions provided by this service in cm.
Case manager interface.
Definition ICaseMng.h:57
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --