 |
helics
3.0.1
|
9 #include "../core/Core.hpp"
10 #include "Federate.hpp"
17 class FilterOperations;
33 #define EMPTY_STRING std::string()
42 bool disableAssign =
false;
44 std::shared_ptr<FilterOperations>
50 explicit Filter(
Federate* ffed,
const std::string& filtName = EMPTY_STRING);
58 const std::string& filtName = EMPTY_STRING);
60 explicit Filter(
Core* cr,
const std::string& filtName = EMPTY_STRING);
62 virtual ~
Filter() =
default;
73 void setOperator(std::shared_ptr<FilterOperator> mo);
75 virtual const std::string&
getDisplayName()
const override {
return getName(); }
81 virtual void set(
const std::string& property,
double val);
87 virtual void setString(
const std::string& property,
const std::string& val);
89 void addTarget(
const std::string& target) { addSourceTarget(target); }
93 void setFilterOperations(std::shared_ptr<FilterOperations> filterOps);
113 const std::string& filtName = EMPTY_STRING);
128 void addDeliveryEndpoint(
const std::string& endpoint);
131 void removeDeliveryEndpoint(
const std::string& endpoint);
133 virtual void setString(
const std::string& property,
const std::string& val)
override;
160 const std::string& name = EMPTY_STRING);
169 HELICS_CXX_EXPORT std::unique_ptr<Filter>
179 HELICS_CXX_EXPORT std::unique_ptr<Filter>
192 const std::string& delivery,
193 const std::string& name = EMPTY_STRING);
207 const std::string& delivery,
208 const std::string& name = EMPTY_STRING);
218 HELICS_CXX_EXPORT std::unique_ptr<CloningFilter>
221 const std::string& delivery,
222 const std::string& name = EMPTY_STRING);
232 HELICS_CXX_EXPORT std::unique_ptr<CloningFilter>
235 const std::string& delivery,
236 const std::string& name = EMPTY_STRING);
Core * cr
pointer to the core object
Definition: application_api/Federate.hpp:629
Definition: Filters.hpp:99
Filter & registerFilter(const std::string &filterName, const std::string &inputType=std::string(), const std::string &outputType=std::string())
Definition: Federate.cpp:1269
InterfaceVisibility
Definition: helicsTypes.hpp:39
void addSourceTarget(std::string_view newTarget)
Definition: Federate.cpp:1365
@ HELICS_FILTER_TYPE_CLONE
Definition: helics_enums.h:352
CloningFilter & operator=(CloningFilter &&filt)=default
void addOperations(Filter *filt, FilterTypes type, Core *)
Definition: Filters.cpp:47
void addDestinationTarget(std::string_view newTarget)
Definition: Federate.cpp:1375
@ HELICS_FILTER_TYPE_DELAY
Definition: helics_enums.h:343
Definition: LocalFederateId.hpp:65
virtual void set(const std::string &property, double val)
Definition: Filters.cpp:132
FilterTypes filterTypeFromString(const std::string &filterType) noexcept
Definition: Filters.cpp:32
Definition: Filters.hpp:39
virtual void setString(const std::string &property, const std::string &val) override
Definition: Filters.cpp:197
Definition: application_api/Federate.hpp:627
Definition: core/Core.hpp:42
Definition: application_api/CoreApp.hpp:25
void removeTarget(std::string_view targetToRemove)
Definition: Federate.cpp:1385
base helics enumerations for C and C++ API's
@ HELICS_FILTER_TYPE_CUSTOM
Definition: helics_enums.h:341
InterfaceHandle handle
the id as generated by the Federate
Definition: application_api/Federate.hpp:630
std::shared_ptr< Core > getCopyofCorePointer() const
Definition: application_api/CoreApp.hpp:173
virtual InterfaceHandle registerFilter(const std::string &filterName, const std::string &type_in, const std::string &type_out)=0
void setOperator(std::shared_ptr< FilterOperator > mo)
Definition: Filters.cpp:115
virtual const std::string & getDisplayName() const override
Definition: Filters.hpp:75
CloningFilter & registerGlobalCloningFilter(const std::string &filterName, const std::string &inputType=std::string(), const std::string &outputType=std::string())
Definition: Federate.cpp:1298
virtual void setFilterOperator(InterfaceHandle filter, std::shared_ptr< FilterOperator > callback)=0
@ HELICS_FILTER_TYPE_RANDOM_DELAY
Definition: helics_enums.h:345
void removeDeliveryEndpoint(const std::string &endpoint)
Definition: Filters.cpp:192
CloningFilter & registerCloningFilter(const std::string &filterName, const std::string &inputType=std::string(), const std::string &outputType=std::string())
Definition: Federate.cpp:1280
@ HELICS_FILTER_TYPE_REROUTE
Definition: helics_enums.h:350
Definition: FilterFederateManager.hpp:23
CloningFilter & make_cloning_filter(FilterTypes type, Federate *mFed, const std::string &delivery, const std::string &name)
Definition: Filters.cpp:265
Filter & make_filter(FilterTypes type, Federate *mFed, const std::string &name)
Definition: Filters.cpp:215
the main namespace for the helics co-simulation library User functions will be in the helics namespac...
Definition: AsyncFedCallInfo.hpp:14
void addDeliveryEndpoint(const std::string &endpoint)
Definition: Filters.cpp:187
virtual void setString(const std::string &property, const std::string &val)
Definition: Filters.cpp:139
@ HELICS_FILTER_TYPE_RANDOM_DROP
Definition: helics_enums.h:347
Definition: application_api/Federate.hpp:47
const std::shared_ptr< Core > & getCorePointer()
Definition: application_api/Federate.hpp:572
virtual InterfaceHandle registerCloningFilter(const std::string &filterName, const std::string &type_in, const std::string &type_out)=0
Filter & registerGlobalFilter(const std::string &filterName, const std::string &inputType=std::string(), const std::string &outputType=std::string())
Definition: Federate.cpp:1291
bool isCloningFilter() const
Definition: Filters.hpp:71
void setFilterOperations(std::shared_ptr< FilterOperations > filterOps)
Definition: Filters.cpp:122
@ HELICS_FILTER_TYPE_FIREWALL
Definition: helics_enums.h:355
FilterTypes
Definition: Filters.hpp:21