summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/FtRtEvent/Utils/Safe_InputCDR.h
blob: b4aede7f5700667245169f9e86442e1d84a9661a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// -*- C++ -*-
//=============================================================================
/**
 *  @file   Safe_InputCDR.h
 *
 *  $Id$
 *
 *  @author Huang-Ming Huang <hh1@cse.wustl.edu>
 */
//=============================================================================
#ifndef SAFE_INPUTCDR_H
#define SAFE_INPUTCDR_H
#include /**/ "ace/pre.h"

#include "orbsvcs/FtRtEvent/Utils/ftrtevent_export.h"
#include "tao/CDR.h"

TAO_BEGIN_VERSIONED_NAMESPACE_DECL

class TAO_FtRtEvent_Export Safe_InputCDR : public TAO_InputCDR
{
public:
  /**
   * Create an input stream from an arbitrary buffer.
   *
   * This contructor will work no matter the buffer is aligned properly
   * or not. If the buffer is not properly aligned, it will make a copy
   * of the buffer.
   */
  Safe_InputCDR(const char* buf, int size);
};

TAO_END_VERSIONED_NAMESPACE_DECL

#if defined(__ACE_INLINE__)
#include "orbsvcs/FtRtEvent/Utils/Safe_InputCDR.inl"
#endif /* __ACE_INLINE__ */

#include /**/ "ace/post.h"
#endif