Program Listing for File Data.h

Return to documentation for file (/tmp/ws/src/sick_safetyscanners_base/include/sick_safetyscanners_base/datastructure/Data.h)

// this is for emacs file handling -*- mode: c++; indent-tabs-mode: nil -*-

// -- BEGIN LICENSE BLOCK ----------------------------------------------

// -- END LICENSE BLOCK ------------------------------------------------

//----------------------------------------------------------------------
//----------------------------------------------------------------------

#ifndef SICK_SAFETYSCANNERS_BASE_DATASTRUCTURE_DATA_H
#define SICK_SAFETYSCANNERS_BASE_DATASTRUCTURE_DATA_H

#include <memory>

#include "sick_safetyscanners_base/datastructure/ApplicationData.h"
#include "sick_safetyscanners_base/datastructure/ApplicationInputs.h"
#include "sick_safetyscanners_base/datastructure/ApplicationOutputs.h"
#include "sick_safetyscanners_base/datastructure/DataHeader.h"
#include "sick_safetyscanners_base/datastructure/DerivedValues.h"
#include "sick_safetyscanners_base/datastructure/GeneralSystemState.h"
#include "sick_safetyscanners_base/datastructure/IntrusionData.h"
#include "sick_safetyscanners_base/datastructure/MeasurementData.h"

namespace sick {
namespace datastructure {

class Data
{
public:
  Data();

  std::shared_ptr<DataHeader> getDataHeaderPtr() const;
  void setDataHeaderPtr(const std::shared_ptr<DataHeader>& data_header_ptr);

  std::shared_ptr<GeneralSystemState> getGeneralSystemStatePtr() const;
  void
  setGeneralSystemStatePtr(const std::shared_ptr<GeneralSystemState>& general_system_state_ptr);

  std::shared_ptr<DerivedValues> getDerivedValuesPtr() const;
  void setDerivedValuesPtr(const std::shared_ptr<DerivedValues>& derived_values_ptr);

  std::shared_ptr<MeasurementData> getMeasurementDataPtr() const;
  void setMeasurementDataPtr(const std::shared_ptr<MeasurementData>& measurement_data_ptr);

  std::shared_ptr<IntrusionData> getIntrusionDataPtr() const;
  void setIntrusionDataPtr(const std::shared_ptr<IntrusionData>& intrusion_data_ptr);

  std::shared_ptr<ApplicationData> getApplicationDataPtr() const;
  void setApplicationDataPtr(const std::shared_ptr<ApplicationData>& application_data_ptr);

private:
  std::shared_ptr<DataHeader> m_data_header_ptr;
  std::shared_ptr<GeneralSystemState> m_general_system_state_ptr;
  std::shared_ptr<DerivedValues> m_derived_values_ptr;
  std::shared_ptr<MeasurementData> m_measurement_data_ptr;
  std::shared_ptr<IntrusionData> m_intrusion_data_ptr;
  std::shared_ptr<ApplicationData> m_application_data_ptr;
};

} // namespace datastructure
} // namespace sick

#endif