Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
ICaseDocumentVisitor.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/* ICaseDocumentVisitor.h (C) 2000-2025 */
9/* */
10/* Visitor interface for a dataset. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_ICASEDOCUMENTVISITOR_H
13#define ARCANE_CORE_ICASEDOCUMENTVISITOR_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22namespace Arcane
23{
24
25/*---------------------------------------------------------------------------*/
26/*---------------------------------------------------------------------------*/
27
31class ARCANE_CORE_EXPORT ICaseDocumentVisitor
32{
33 public:
34
35 virtual ~ICaseDocumentVisitor() = default;
36
37 public:
38
39 virtual void beginVisit(const ICaseOptions* opt) = 0;
40 virtual void endVisit(const ICaseOptions* opt) = 0;
41 virtual void beginVisit(const CaseOptionServiceImpl* opt) = 0;
42 virtual void endVisit(const CaseOptionServiceImpl* opt) = 0;
43 virtual void beginVisit(const CaseOptionMultiServiceImpl* opt, Integer index) = 0;
44 virtual void endVisit(const CaseOptionMultiServiceImpl* opt, Integer index) = 0;
45 virtual void applyVisitor(const CaseOptionSimple* opt) = 0;
46 virtual void applyVisitor(const CaseOptionMultiSimple* opt) = 0;
47 virtual void applyVisitor(const CaseOptionExtended* opt) = 0;
48 virtual void applyVisitor(const CaseOptionMultiExtended* opt) = 0;
49 virtual void applyVisitor(const CaseOptionEnum* opt) = 0;
50 virtual void applyVisitor(const CaseOptionMultiEnum* opt) = 0;
51};
52
53/*---------------------------------------------------------------------------*/
54/*---------------------------------------------------------------------------*/
55
56} // namespace Arcane
57
58/*---------------------------------------------------------------------------*/
59/*---------------------------------------------------------------------------*/
60
61#endif
Declarations of Arcane's general types.
Enumerated data set option.
Option for the extended type dataset.
Multi-enumeration data set option.
Option for the extended list of types dataset.
Base class for a service option that can appear multiple times.
Base class for implementing options using services.
Base class for simple options (single value).
Visitor interface for a dataset option.
Interface for a list of data set options.
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --
Int32 Integer
Type representing an integer.