Program Listing for File CreateSession.h

Return to documentation for file (/tmp/ws/src/sick_safetyscanners_base/include/sick_safetyscanners_base/cola2/CreateSession.h)

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

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

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

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

#ifndef SICK_SAFETYSCANNERS_BASE_COLA2_CREATESESSION_H
#define SICK_SAFETYSCANNERS_BASE_COLA2_CREATESESSION_H


#include "sick_safetyscanners_base/cola2/Command.h"

namespace sick {
namespace cola2 {

class CreateSession : public Command
{
public:
  explicit CreateSession(Cola2Session& session);

  std::vector<uint8_t> addTelegramData(const std::vector<uint8_t>& telegram) const;

  bool canBeExecutedWithoutSessionID() const;

  bool processReply();

private:
  /*std::vector<uint8_t>
  prepareTelegramAndGetDataPtr(const std::vector<uint8_t>& telegram) const;*/
  void writeHeartbeatTimeoutToDataPtr(std::vector<uint8_t>::iterator it) const;
  void writeClientIdToDataPtr(std::vector<uint8_t>::iterator it) const;
};

} // namespace cola2
} // namespace sick

#endif // SICK_SAFETYSCANNERS_BASE_COLA2_CREATESESSION_H