Version: 1.0
conact_code_generator.h
Go to the documentation of this file.
1 // Copyright (c) 2020, the GRAPHGEN contributors, as
2 // shown by the AUTHORS file. All rights reserved.
3 //
4 // Use of this source code is governed by a BSD-style
5 // license that can be found in the LICENSE file.
6 
7 #ifndef GRAPHGEN_CONACT_CODE_GENERATOR_H_
8 #define GRAPHGEN_CONACT_CODE_GENERATOR_H_
9 
10 #include <ostream>
11 #include <optional>
12 
13 #include "conact_tree.h"
14 #include "forest.h"
15 #include "rule_set.h"
16 
17 
22  NONE = 0,
23  CONDITIONS_WITH_IFS = (1 << 0),
27  ACTIONS_WITH_CONTINUE = (1 << 1),
28 )
29 
30 
34  LABELING = (1 << 0),
35  THINNING = (1 << 1),
36  CHAIN_CODE = (1 << 2),
37 )
38 
49  std::optional<pixel_set> names = std::nullopt);
50 
51 // This is the version for CTBE algorithm. It is very raw and it is based on the previous versione of graphgen
52 //bool GenerateActionsForCtbe(const std::string& filename, const rule_set& rs);
53 
54 
55 #endif // GRAPHGEN_CONACT_CODE_GENERATOR_H_
bool GeneratePointersConditionsActionsCode(const rule_set &rs, GenerateConditionActionCodeFlags flag=GenerateConditionActionCodeFlags::CONDITIONS_WITH_IFS|GenerateConditionActionCodeFlags::ACTIONS_WITH_CONTINUE, GenerateActionCodeTypes type=GenerateActionCodeTypes::LABELING, std::optional< pixel_set > names=std::nullopt)
TODO fix documentation names contains the position in the labels image corresponding to the names use...
GenerateConditionActionCodeFlags
This is the enum class that defines the available flags for the GeneratePointersConditionsActionsCode...
GenerateActionCodeTypes
This is the enum class that defines the available algorithms types for the GenerateActionsCode functi...
#define DEFINE_ENUM_CLASS_FLAGS(class_name,...)
Definition: utilities.h:41