Skip to content

Commit

Permalink
Add assembling and splitting modules to CMakeLists.
Browse files Browse the repository at this point in the history
- Added assembling module with various functions.
- Added splitting module with corresponding functions.

.
  • Loading branch information
franz-hoepfinger-4diac authored and azoitl committed Oct 6, 2024
1 parent 624594b commit 3c48c80
Show file tree
Hide file tree
Showing 6 changed files with 329 additions and 1 deletion.
5 changes: 4 additions & 1 deletion src/modules/utils/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,7 @@ forte_add_sourcefile_hcpp(FB_RANDOM_fbt GET_STRUCT_VALUE_fbt SET_STRUCT_VALUE_fb

forte_add_sourcefile_hcpp(STEST_END_fbt)
forte_add_sourcefile_hcpp(TEST_CONDITION_fbt)
forte_add_subdirectory(selection)
forte_add_subdirectory(selection)
forte_add_subdirectory(const)
forte_add_subdirectory(assembling)
forte_add_subdirectory(splitting)
27 changes: 27 additions & 0 deletions src/modules/utils/assembling/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
#*******************************************************************************
# Copyright (c) 2023 HR Agrartechnik GmbH
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License 2.0 which is available at
# http://www.eclipse.org/legal/epl-2.0.
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Franz Hoepfinger - initial API and implementation and/or initial documentation
# *******************************************************************************/
forte_add_include_directories(${CMAKE_CURRENT_SOURCE_DIR})
#######################################################
# assembling
#######################################################

forte_add_sourcefile_hcpp(ASSEMBLE_BYTE_FROM_BOOLS_fct)
forte_add_sourcefile_hcpp(ASSEMBLE_BYTE_FROM_QUARTERS_fct)
forte_add_sourcefile_hcpp(ASSEMBLE_DWORD_FROM_BOOLS_fct)
forte_add_sourcefile_hcpp(ASSEMBLE_DWORD_FROM_BYTES_fct)
forte_add_sourcefile_hcpp(ASSEMBLE_DWORD_FROM_QUARTERS_fct)
forte_add_sourcefile_hcpp(ASSEMBLE_DWORD_FROM_WORDS_fct)
forte_add_sourcefile_hcpp(ASSEMBLE_LWORD_FROM_BOOLS_fct)
forte_add_sourcefile_hcpp(ASSEMBLE_LWORD_FROM_QUARTERS_fct)
forte_add_sourcefile_hcpp(ASSEMBLE_WORD_FROM_BOOLS_fct)
forte_add_sourcefile_hcpp(ASSEMBLE_WORD_FROM_BYTES_fct)
forte_add_sourcefile_hcpp(ASSEMBLE_WORD_FROM_QUARTERS_fct)
17 changes: 17 additions & 0 deletions src/modules/utils/const/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
#*******************************************************************************
# Copyright (c) 2023 HR Agrartechnik GmbH
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License 2.0 which is available at
# http://www.eclipse.org/legal/epl-2.0.
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Franz Hoepfinger - initial API and implementation and/or initial documentation
# *******************************************************************************/
forte_add_include_directories(${CMAKE_CURRENT_SOURCE_DIR})
#######################################################
# const
#######################################################

forte_add_sourcefile_hcpp(quarterconst_gcf)
128 changes: 128 additions & 0 deletions src/modules/utils/const/quarterconst_gcf.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
/*************************************************************************
*** Copyright (c) 2024 HR Agrartechnik GmbH
*** This program and the accompanying materials are made available under the
*** terms of the Eclipse Public License 2.0 which is available at
*** http://www.eclipse.org/legal/epl-2.0.
***
*** SPDX-License-Identifier: EPL-2.0
***
*** FORTE Language Element
***
*** This file was generated using the 4DIAC FORTE Export Filter V1.0.x NG!
***
*** Name: quarterconst_gcf
*************************************************************************/

#include "quarterconst_gcf.h"
#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
#include "quarterconst_gcf_gen.cpp"
#endif

#include "iec61131_functions.h"
#include "forte_byte.h"
#include "forte_dword.h"
#include "forte_lword.h"
#include "forte_sint.h"
#include "forte_word.h"
#include "iec61131_functions.h"
#include "forte_array_common.h"
#include "forte_array.h"
#include "forte_array_fixed.h"
#include "forte_array_variable.h"

const CIEC_BYTE st_global_BYTE_QUARTER_ZZ = 0_BYTE;
const CIEC_SINT st_global_SHIFT_QUARTER_00 = 0_SINT;
const CIEC_BYTE st_global_BYTE_QUARTER_00 = 3_BYTE;
const CIEC_SINT st_global_SHIFT_QUARTER_01 = 2_SINT;
const CIEC_BYTE st_global_BYTE_QUARTER_01 = 12_BYTE;
const CIEC_SINT st_global_SHIFT_QUARTER_02 = 4_SINT;
const CIEC_BYTE st_global_BYTE_QUARTER_02 = 48_BYTE;
const CIEC_SINT st_global_SHIFT_QUARTER_03 = 6_SINT;
const CIEC_BYTE st_global_BYTE_QUARTER_03 = 192_BYTE;
const CIEC_WORD st_global_WORD_QUARTER_ZZ = 0_WORD;
const CIEC_WORD st_global_WORD_QUARTER_00 = 3_WORD;
const CIEC_WORD st_global_WORD_QUARTER_01 = 12_WORD;
const CIEC_WORD st_global_WORD_QUARTER_02 = 48_WORD;
const CIEC_WORD st_global_WORD_QUARTER_03 = 192_WORD;
const CIEC_SINT st_global_SHIFT_QUARTER_04 = 8_SINT;
const CIEC_WORD st_global_WORD_QUARTER_04 = 768_WORD;
const CIEC_SINT st_global_SHIFT_QUARTER_05 = 10_SINT;
const CIEC_WORD st_global_WORD_QUARTER_05 = 3072_WORD;
const CIEC_SINT st_global_SHIFT_QUARTER_06 = 12_SINT;
const CIEC_WORD st_global_WORD_QUARTER_06 = 12288_WORD;
const CIEC_SINT st_global_SHIFT_QUARTER_07 = 14_SINT;
const CIEC_WORD st_global_WORD_QUARTER_07 = 49152_WORD;
const CIEC_DWORD st_global_DWORD_QUARTER_ZZ = 0_DWORD;
const CIEC_DWORD st_global_DWORD_QUARTER_00 = 3_DWORD;
const CIEC_DWORD st_global_DWORD_QUARTER_01 = 12_DWORD;
const CIEC_DWORD st_global_DWORD_QUARTER_02 = 48_DWORD;
const CIEC_DWORD st_global_DWORD_QUARTER_03 = 192_DWORD;
const CIEC_DWORD st_global_DWORD_QUARTER_04 = 768_DWORD;
const CIEC_DWORD st_global_DWORD_QUARTER_05 = 3072_DWORD;
const CIEC_DWORD st_global_DWORD_QUARTER_06 = 12288_DWORD;
const CIEC_DWORD st_global_DWORD_QUARTER_07 = 49152_DWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_08 = 16_SINT;
const CIEC_DWORD st_global_DWORD_QUARTER_08 = 196608_DWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_09 = 18_SINT;
const CIEC_DWORD st_global_DWORD_QUARTER_09 = 786432_DWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_10 = 20_SINT;
const CIEC_DWORD st_global_DWORD_QUARTER_10 = 3145728_DWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_11 = 22_SINT;
const CIEC_DWORD st_global_DWORD_QUARTER_11 = 12582912_DWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_12 = 24_SINT;
const CIEC_DWORD st_global_DWORD_QUARTER_12 = 50331648_DWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_13 = 26_SINT;
const CIEC_DWORD st_global_DWORD_QUARTER_13 = 201326592_DWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_14 = 28_SINT;
const CIEC_DWORD st_global_DWORD_QUARTER_14 = 805306368_DWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_15 = 30_SINT;
const CIEC_DWORD st_global_DWORD_QUARTER_15 = 3221225472_DWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_ZZ = 0_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_00 = 3_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_01 = 12_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_02 = 48_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_03 = 192_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_04 = 768_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_05 = 3072_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_06 = 12288_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_07 = 49152_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_08 = 196608_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_09 = 786432_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_10 = 3145728_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_11 = 12582912_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_12 = 50331648_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_13 = 201326592_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_14 = 805306368_LWORD;
const CIEC_LWORD st_global_LWORD_QUARTER_15 = 3221225472_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_16 = 32_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_16 = 12884901888_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_17 = 34_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_17 = 51539607552_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_18 = 36_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_18 = 206158430208_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_19 = 38_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_19 = 824633720832_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_20 = 40_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_20 = 3298534883328_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_21 = 42_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_21 = 13194139533312_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_22 = 44_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_22 = 52776558133248_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_23 = 46_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_23 = 211106232532992_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_24 = 48_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_24 = 844424930131968_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_25 = 50_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_25 = 3377699720527872_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_26 = 52_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_26 = 13510798882111488_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_27 = 54_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_27 = 54043195528445952_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_28 = 56_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_28 = 216172782113783808_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_29 = 58_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_29 = 864691128455135232_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_30 = 60_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_30 = 3458764513820540928_LWORD;
const CIEC_SINT st_global_SHIFT_QUARTER_31 = 62_SINT;
const CIEC_LWORD st_global_LWORD_QUARTER_31 = 13835058055282163712_LWORD;
127 changes: 127 additions & 0 deletions src/modules/utils/const/quarterconst_gcf.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
/*************************************************************************
*** Copyright (c) 2024 HR Agrartechnik GmbH
*** This program and the accompanying materials are made available under the
*** terms of the Eclipse Public License 2.0 which is available at
*** http://www.eclipse.org/legal/epl-2.0.
***
*** SPDX-License-Identifier: EPL-2.0
***
*** FORTE Language Element
***
*** This file was generated using the 4DIAC FORTE Export Filter V1.0.x NG!
***
*** Name: quarterconst_gcf
*************************************************************************/

#ifndef _QUARTERCONST_GCF_H_
#define _QUARTERCONST_GCF_H_

#include "forte_byte.h"
#include "forte_dword.h"
#include "forte_lword.h"
#include "forte_sint.h"
#include "forte_word.h"
#include "iec61131_functions.h"
#include "forte_array_common.h"
#include "forte_array.h"
#include "forte_array_fixed.h"
#include "forte_array_variable.h"

extern const CIEC_BYTE st_global_BYTE_QUARTER_ZZ;
extern const CIEC_SINT st_global_SHIFT_QUARTER_00;
extern const CIEC_BYTE st_global_BYTE_QUARTER_00;
extern const CIEC_SINT st_global_SHIFT_QUARTER_01;
extern const CIEC_BYTE st_global_BYTE_QUARTER_01;
extern const CIEC_SINT st_global_SHIFT_QUARTER_02;
extern const CIEC_BYTE st_global_BYTE_QUARTER_02;
extern const CIEC_SINT st_global_SHIFT_QUARTER_03;
extern const CIEC_BYTE st_global_BYTE_QUARTER_03;
extern const CIEC_WORD st_global_WORD_QUARTER_ZZ;
extern const CIEC_WORD st_global_WORD_QUARTER_00;
extern const CIEC_WORD st_global_WORD_QUARTER_01;
extern const CIEC_WORD st_global_WORD_QUARTER_02;
extern const CIEC_WORD st_global_WORD_QUARTER_03;
extern const CIEC_SINT st_global_SHIFT_QUARTER_04;
extern const CIEC_WORD st_global_WORD_QUARTER_04;
extern const CIEC_SINT st_global_SHIFT_QUARTER_05;
extern const CIEC_WORD st_global_WORD_QUARTER_05;
extern const CIEC_SINT st_global_SHIFT_QUARTER_06;
extern const CIEC_WORD st_global_WORD_QUARTER_06;
extern const CIEC_SINT st_global_SHIFT_QUARTER_07;
extern const CIEC_WORD st_global_WORD_QUARTER_07;
extern const CIEC_DWORD st_global_DWORD_QUARTER_ZZ;
extern const CIEC_DWORD st_global_DWORD_QUARTER_00;
extern const CIEC_DWORD st_global_DWORD_QUARTER_01;
extern const CIEC_DWORD st_global_DWORD_QUARTER_02;
extern const CIEC_DWORD st_global_DWORD_QUARTER_03;
extern const CIEC_DWORD st_global_DWORD_QUARTER_04;
extern const CIEC_DWORD st_global_DWORD_QUARTER_05;
extern const CIEC_DWORD st_global_DWORD_QUARTER_06;
extern const CIEC_DWORD st_global_DWORD_QUARTER_07;
extern const CIEC_SINT st_global_SHIFT_QUARTER_08;
extern const CIEC_DWORD st_global_DWORD_QUARTER_08;
extern const CIEC_SINT st_global_SHIFT_QUARTER_09;
extern const CIEC_DWORD st_global_DWORD_QUARTER_09;
extern const CIEC_SINT st_global_SHIFT_QUARTER_10;
extern const CIEC_DWORD st_global_DWORD_QUARTER_10;
extern const CIEC_SINT st_global_SHIFT_QUARTER_11;
extern const CIEC_DWORD st_global_DWORD_QUARTER_11;
extern const CIEC_SINT st_global_SHIFT_QUARTER_12;
extern const CIEC_DWORD st_global_DWORD_QUARTER_12;
extern const CIEC_SINT st_global_SHIFT_QUARTER_13;
extern const CIEC_DWORD st_global_DWORD_QUARTER_13;
extern const CIEC_SINT st_global_SHIFT_QUARTER_14;
extern const CIEC_DWORD st_global_DWORD_QUARTER_14;
extern const CIEC_SINT st_global_SHIFT_QUARTER_15;
extern const CIEC_DWORD st_global_DWORD_QUARTER_15;
extern const CIEC_LWORD st_global_LWORD_QUARTER_ZZ;
extern const CIEC_LWORD st_global_LWORD_QUARTER_00;
extern const CIEC_LWORD st_global_LWORD_QUARTER_01;
extern const CIEC_LWORD st_global_LWORD_QUARTER_02;
extern const CIEC_LWORD st_global_LWORD_QUARTER_03;
extern const CIEC_LWORD st_global_LWORD_QUARTER_04;
extern const CIEC_LWORD st_global_LWORD_QUARTER_05;
extern const CIEC_LWORD st_global_LWORD_QUARTER_06;
extern const CIEC_LWORD st_global_LWORD_QUARTER_07;
extern const CIEC_LWORD st_global_LWORD_QUARTER_08;
extern const CIEC_LWORD st_global_LWORD_QUARTER_09;
extern const CIEC_LWORD st_global_LWORD_QUARTER_10;
extern const CIEC_LWORD st_global_LWORD_QUARTER_11;
extern const CIEC_LWORD st_global_LWORD_QUARTER_12;
extern const CIEC_LWORD st_global_LWORD_QUARTER_13;
extern const CIEC_LWORD st_global_LWORD_QUARTER_14;
extern const CIEC_LWORD st_global_LWORD_QUARTER_15;
extern const CIEC_SINT st_global_SHIFT_QUARTER_16;
extern const CIEC_LWORD st_global_LWORD_QUARTER_16;
extern const CIEC_SINT st_global_SHIFT_QUARTER_17;
extern const CIEC_LWORD st_global_LWORD_QUARTER_17;
extern const CIEC_SINT st_global_SHIFT_QUARTER_18;
extern const CIEC_LWORD st_global_LWORD_QUARTER_18;
extern const CIEC_SINT st_global_SHIFT_QUARTER_19;
extern const CIEC_LWORD st_global_LWORD_QUARTER_19;
extern const CIEC_SINT st_global_SHIFT_QUARTER_20;
extern const CIEC_LWORD st_global_LWORD_QUARTER_20;
extern const CIEC_SINT st_global_SHIFT_QUARTER_21;
extern const CIEC_LWORD st_global_LWORD_QUARTER_21;
extern const CIEC_SINT st_global_SHIFT_QUARTER_22;
extern const CIEC_LWORD st_global_LWORD_QUARTER_22;
extern const CIEC_SINT st_global_SHIFT_QUARTER_23;
extern const CIEC_LWORD st_global_LWORD_QUARTER_23;
extern const CIEC_SINT st_global_SHIFT_QUARTER_24;
extern const CIEC_LWORD st_global_LWORD_QUARTER_24;
extern const CIEC_SINT st_global_SHIFT_QUARTER_25;
extern const CIEC_LWORD st_global_LWORD_QUARTER_25;
extern const CIEC_SINT st_global_SHIFT_QUARTER_26;
extern const CIEC_LWORD st_global_LWORD_QUARTER_26;
extern const CIEC_SINT st_global_SHIFT_QUARTER_27;
extern const CIEC_LWORD st_global_LWORD_QUARTER_27;
extern const CIEC_SINT st_global_SHIFT_QUARTER_28;
extern const CIEC_LWORD st_global_LWORD_QUARTER_28;
extern const CIEC_SINT st_global_SHIFT_QUARTER_29;
extern const CIEC_LWORD st_global_LWORD_QUARTER_29;
extern const CIEC_SINT st_global_SHIFT_QUARTER_30;
extern const CIEC_LWORD st_global_LWORD_QUARTER_30;
extern const CIEC_SINT st_global_SHIFT_QUARTER_31;
extern const CIEC_LWORD st_global_LWORD_QUARTER_31;

#endif // _QUARTERCONST_GCF_H_
26 changes: 26 additions & 0 deletions src/modules/utils/splitting/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
#*******************************************************************************
# Copyright (c) 2023 HR Agrartechnik GmbH
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License 2.0 which is available at
# http://www.eclipse.org/legal/epl-2.0.
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Franz Hoepfinger - initial API and implementation and/or initial documentation
# *******************************************************************************/
forte_add_include_directories(${CMAKE_CURRENT_SOURCE_DIR})
#######################################################
# assembling
#######################################################

forte_add_sourcefile_hcpp(SPLIT_BYTE_INTO_BOOLS_fct)
forte_add_sourcefile_hcpp(SPLIT_BYTE_INTO_QUARTERS_fct)
forte_add_sourcefile_hcpp(SPLIT_DWORD_INTO_BOOLS_fct)
forte_add_sourcefile_hcpp(SPLIT_DWORD_INTO_QUARTERS_fct)
forte_add_sourcefile_hcpp(SPLIT_DWORD_INTO_WORDS_fct)
forte_add_sourcefile_hcpp(SPLIT_LWORD_INTO_BOOLS_fct)
forte_add_sourcefile_hcpp(SPLIT_LWORD_INTO_QUARTERS_fct)
forte_add_sourcefile_hcpp(SPLIT_WORD_INTO_BOOLS_fct)
forte_add_sourcefile_hcpp(SPLIT_WORD_INTO_BYTES_fct)
forte_add_sourcefile_hcpp(SPLIT_WORD_INTO_QUARTERS_fct)

0 comments on commit 3c48c80

Please sign in to comment.