Commit 0634192a authored by Thomas Braun's avatar Thomas Braun
Browse files

tango/server/PollingThreadInfo.h: Factor it out

parent 41c97770
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -64,6 +64,7 @@ set(SERVER_HEADERS UserDefaultAttrProp.h
    NotifdEventSupplier.h
    UserDefaultPipeProp.h
    UserDefaultFwdAttrProp.h
    PollingThreadInfo.h
    PollObj.h
    PollRing.h
    pollring_templ.h
+43 −0
Original line number Diff line number Diff line
/*
 * SPDX-FileCopyrightText: 2004 Copyright contributors to the cppTango project
 *
 * SPDX-License-Identifier: LGPL-3.0-or-later
 */

#ifndef TANGO_SERVER_POLLINGTHREADINFO_H
#define TANGO_SERVER_POLLINGTHREADINFO_H

#include <tango/common/idl_wrapper.h>
#include <tango/server/PollThread.h>
#include <tango/server/TangoMonitor.h>

#include <string>
#include <vector>

namespace Tango
{

struct PollingThreadInfo
{
    int thread_id{0};                                // The polling thread identifier
    PollThread *poll_th{nullptr};                    // The polling thread object
    PollThCmd shared_data;                           // The shared buffer
    TangoMonitor poll_mon;                           // The monitor
    std::vector<std::string> polled_devices;         // Polled devices for this thread
    int nb_polled_objects{0};                        // Polled objects number in this thread
    int smallest_upd{0};                             // Smallest thread update period
    std::vector<DevVarLongStringArray *> v_poll_cmd; // Command(s) to send

    PollingThreadInfo() :

        poll_mon("Polling_thread_mon")

    {
        shared_data.cmd_pending = false;
        shared_data.trigger = false;
    }
};

} // namespace Tango

#endif /* UTILS */
+1 −22
Original line number Diff line number Diff line
@@ -10,6 +10,7 @@
#include <tango/client/ApiUtil.h>
#include <tango/server/AttrHistoryStack.h>
#include <tango/server/CmdHistoryStack.h>
#include <tango/server/PollingThreadInfo.h>
#include <tango/server/PollThread.h>
#include <tango/server/RootAttRegistry.h>
#include <tango/server/SubDevDiag.h>
@@ -42,7 +43,6 @@ class SubDevDiag;
class FwdAttr;
class Interceptors;

struct PollingThreadInfo;
struct DevDbUpd;

#ifdef _TG_WINDOWS_
@@ -1503,27 +1503,6 @@ void clear_att_dim(Tango::AttributeValue_5 &att_val);
//
//-----------------------------------------------------------------------

struct PollingThreadInfo
{
    int thread_id{0};                                // The polling thread identifier
    PollThread *poll_th{nullptr};                    // The polling thread object
    PollThCmd shared_data;                           // The shared buffer
    TangoMonitor poll_mon;                           // The monitor
    std::vector<std::string> polled_devices;         // Polled devices for this thread
    int nb_polled_objects{0};                        // Polled objects number in this thread
    int smallest_upd{0};                             // Smallest thread update period
    std::vector<DevVarLongStringArray *> v_poll_cmd; // Command(s) to send

    PollingThreadInfo() :

        poll_mon("Polling_thread_mon")

    {
        shared_data.cmd_pending = false;
        shared_data.trigger = false;
    }
};

struct DevDbUpd
{
    unsigned long class_ind;
+1 −0
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@
 */

#include <tango/server/CoutAppender.h>

#include <tango/server/Util.h>

namespace Tango