36 static const int DefaultSubdev = -1;
37 static const int DefaultChannel = -1;
38 static const int DefaultCard = -1;
42 IOBase(
const IOBase& r ) =
delete;
43 IOBase& operator=(
const IOBase& r) =
delete;
45 IOBase( IOBase&& r ) =
default;
46 IOBase& operator=(IOBase&& r) =
default;
50 stype(UniversalIO::UnknownIOType),
67 debounce_pause(
false),
74 d_iotype(UniversalIO::UnknownIOType),
77 front_type(ftUnknown),
78 front_prev_state(
false),
100 bool check_depend(
const std::shared_ptr<SMInterface>& shm );
141 IOController::IOStateList::iterator d_it;
144 UniversalIO::IOType d_iotype;
152 IOController::IOStateList::iterator t_ait;
162 friend std::ostream& operator<<( std::ostream& os,
const FrontType& f );
165 FrontType front_type;
166 bool front_prev_state;
171 IOController::IOStateList::iterator ioit;
174 IOBase make_iobase_copy();
175 void create_from_iobase(
const IOBase& b );
177 friend std::ostream& operator<<(std::ostream& os,
const IOBase& inf );
179 static void processingF64asAI( IOBase* it,
double new_val,
const std::shared_ptr<SMInterface>& shm,
bool force );
180 static void processingFasAI( IOBase* it,
float new_val,
const std::shared_ptr<SMInterface>& shm,
bool force );
181 static void processingAsAI( IOBase* it,
long new_val,
const std::shared_ptr<SMInterface>& shm,
bool force );
182 static void processingAsDI( IOBase* it,
bool new_set,
const std::shared_ptr<SMInterface>& shm,
bool force );
183 static long processingAsAO( IOBase* it,
const std::shared_ptr<SMInterface>& shm,
bool force );
184 static float processingFasAO( IOBase* it,
const std::shared_ptr<SMInterface>& shm,
bool force );
185 static double processingF64asAO( IOBase* it,
const std::shared_ptr<SMInterface>& shm,
bool force );
186 static bool processingAsDO( IOBase* it,
const std::shared_ptr<SMInterface>& shm,
bool force );
187 static void processingThreshold( IOBase* it,
const std::shared_ptr<SMInterface>& shm,
bool force );
192 static bool initItem( IOBase* b, UniXML::iterator& it,
const std::shared_ptr<SMInterface>& shm,
193 const std::string& prefix,
bool init_prefix_only,
194 std::shared_ptr<DebugStream> dlog =
nullptr, std::string myname =
"",
195 int def_filtersize = 0,
float def_filterT = 0.0,
196 float def_lsparam = 0.2,
float def_iir_coeff_prev = 0.5,
197 float def_iir_coeff_new = 0.5 );
201 static std::string initProp( UniXML::iterator& it,
const std::string& prop,
const std::string& prefix,
bool prefonly,
const std::string&
defval =
"" );
202 static int initIntProp( UniXML::iterator& it,
const std::string& prop,
const std::string& prefix,
bool prefonly,
const int defval = 0 );
203 static timeout_t initTimeoutProp( UniXML::iterator& it,
const std::string& prop,
const std::string& prefix,
bool prefonly,
const timeout_t
defval);
static bool initItem(IOBase *b, UniXML::iterator &it, const std::shared_ptr< SMInterface > &shm, const std::string &prefix, bool init_prefix_only, std::shared_ptr< DebugStream > dlog=nullptr, std::string myname="", int def_filtersize=0, float def_filterT=0.0, float def_lsparam=0.2, float def_iir_coeff_prev=0.5, float def_iir_coeff_new=0.5)
Определения IOBase.cc:687