UserComponentC.h

#ifndef USERDEFINEDSTRUCTURELIB_USERCOMPONENTC_H
#define USERDEFINEDSTRUCTURELIB_USERCOMPONENTC_H

#include <CDPSystem/Base/CDPComponent.h>
#include <Signal/CDPSignal.h>
#include <CDPParameter/CDPParameter.h>
#include <CDPAlarm/CDPAlarm.h>

namespace UserDefinedStructureLib {

class UserNodeC;

class UserComponentC : public CDPComponent
{
public:
    UserComponentC();
    ~UserComponentC() override;

    void Create(const char* fullName) override;
    void CreateModel() override;
    void Configure(const char* componentXML) override;
    void ProcessNull() override;
    bool HandleXMLElement(XMLElementEx *pEx) override;
    void FillNodeChildren(CDP::StudioAPI::NodeStream &serializer) const override;

protected:
    std::vector<UserNodeC*> m_userNodesC;
    using CDPComponent::requestedState;
    using CDPComponent::ts;
    using CDPComponent::fs;
};

} // namespace UserDefinedStructureLib

#endif