Line data Source code
1 : !--------------------------------------------------------------------------------------------------!
2 : ! CP2K: A general program to perform molecular dynamics simulations !
3 : ! Copyright 2000-2026 CP2K developers group <https://cp2k.org> !
4 : ! !
5 : ! SPDX-License-Identifier: GPL-2.0-or-later !
6 : !--------------------------------------------------------------------------------------------------!
7 :
8 : ! **************************************************************************************************
9 : !> \brief a module to allow simple internal preprocessing in input files.
10 : !> \par History
11 : !> - standalone proof-of-concept implementation (20.02.2008,AK)
12 : !> - integration into cp2k (22.02.2008,tlaino)
13 : !> - variables added (25.02.2008,AK)
14 : !> \author Axel Kohlmeyer [AK] - CMM/UPenn Philadelphia
15 : !> \date 25.02.2008
16 : ! **************************************************************************************************
17 : MODULE cp_parser_ilist_types
18 :
19 : #include "../base/base_uses.f90"
20 : IMPLICIT NONE
21 : PRIVATE
22 :
23 : TYPE ilist_type
24 : LOGICAL :: in_use = .FALSE.
25 : INTEGER :: nel_list = HUGE(0)
26 : INTEGER :: istart = HUGE(0), iend = HUGE(0)
27 : INTEGER :: ipresent = HUGE(0)
28 : END TYPE ilist_type
29 :
30 : PUBLIC :: ilist_type, create_ilist_type, release_ilist_type
31 : CHARACTER(len=*), PARAMETER, PRIVATE :: moduleN = 'cp_parser_ilist_types'
32 :
33 : CONTAINS
34 :
35 : ! ****************************************************************************
36 : !> \brief creates the integer listing type
37 : !> \param ilist ...
38 : !> \date 08.2008
39 : !> \author Teodoro Laino [tlaino] - University of Zurich
40 : ! **************************************************************************************************
41 57635 : SUBROUTINE create_ilist_type(ilist)
42 : TYPE(ilist_type), POINTER :: ilist
43 :
44 57635 : CPASSERT(.NOT. ASSOCIATED(ilist))
45 57635 : ALLOCATE (ilist)
46 :
47 57635 : END SUBROUTINE create_ilist_type
48 :
49 : ! ****************************************************************************
50 : !> \brief creates the integer listing type
51 : !> \param ilist ...
52 : !> \date 08.2008
53 : !> \author Teodoro Laino [tlaino] - University of Zurich
54 : ! **************************************************************************************************
55 57635 : SUBROUTINE release_ilist_type(ilist)
56 : TYPE(ilist_type), POINTER :: ilist
57 :
58 57635 : CPASSERT(ASSOCIATED(ilist))
59 57635 : DEALLOCATE (ilist)
60 57635 : END SUBROUTINE release_ilist_type
61 :
62 0 : END MODULE cp_parser_ilist_types
|