OnixS C++ SGX Titan OUCH Trading Handler  1.2.0
API documentation
Defines.cpp
Go to the documentation of this file.
1 /*
2 * Copyright Onix Solutions Limited [OnixS]. All rights reserved.
3 *
4 * This software owned by Onix Solutions Limited [OnixS] and is protected by copyright law
5 * and international copyright treaties.
6 *
7 * Access to and use of the software is governed by the terms of the applicable OnixS Software
8 * Services Agreement (the Agreement) and Customer end user license agreements granting
9 * a non-assignable, non-transferable and non-exclusive license to use the software
10 * for it's own data processing purposes under the terms defined in the Agreement.
11 *
12 * Except as otherwise granted within the terms of the Agreement, copying or reproduction of any part
13 * of this source code or associated reference material to any other location for further reproduction
14 * or redistribution, and any amendments to this copyright notice, are expressly prohibited.
15 *
16 * Any reproduction or redistribution for sale or hiring of the Software not in accordance with
17 * the terms of the Agreement is a violation of copyright law.
18 */
19 #include <sstream>
20 
21 #include <boost/format.hpp>
22 
24 
25 #include "Defines.h"
26 
27 
29 
30 void RightPaddedStringTraits::fillBufferAndAddSpaces(Byte* buffer, size_t size, Byte filler, const char* value)
31 {
32  for (size_t i = 0; i < size; ++i)
33  {
34  if (i < strlen(value))
35  buffer[i] = value[i];
36  else
37  buffer[i] = filler;
38  }
39 }
40 
41 
42 void RightPaddedStringTraits::fillBufferAndAddSpaces(Byte* buffer, size_t size, Byte filler, Byte value)
43 {
44  buffer[0] = value;
45  for (size_t i = 1; i < size; ++i)
46  buffer[i] = filler;
47 }
48 
49 void LeftPaddedStringTraits::fillBufferAndAddSpaces(Byte* buffer, size_t size, Byte filler, const char* value)
50 {
51  size_t len = strlen(value);
52 
53  assert(len <= size);
54 
55  for (size_t i = 0; i < size - len; ++i)
56  {
57  buffer[i] = filler;
58  }
59 
60  for (size_t i = size - len, index = 0; i < size; ++i, ++index)
61  {
62  buffer[i] = value[index];
63  }
64 }
65 
66 void LeftPaddedStringTraits::fillBufferAndAddSpaces(Byte* buffer, size_t size, Byte filler, Byte value)
67 {
68  buffer[size - 1] = value;
69  for (size_t i = 0; i < size - 1; ++i)
70  buffer[i] = filler;
71 }
72 
73 }}}}
UInt8 Byte
Alias for Byte.
Definition: Memory.h:30
#define ONIXS_SGXTITAN_OUCH_NAMESPACE_BEGIN
Definition: Bootstrap.h:27