MCPcopy Create free account
hub / github.com/Serial-Studio/Serial-Studio / ResizeArrays

Method ResizeArrays

lib/mdflib/mdflib/src/ichannelarray.cpp:65–101  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

63}
64
65void IChannelArray::ResizeArrays() {
66 const size_t dim = Dimensions();
67 const size_t sum_of_array = static_cast<size_t>( SumOfArray() );
68 const size_t prod_of_array = static_cast<size_t>( ProductOfArray() );
69 if (Storage() == ArrayStorage::DgTemplate &&
70 data_links_.size() != prod_of_array) {
71 data_links_.resize(prod_of_array,0);
72 }
73 if ((Flags() & CaFlag::DynamicSize) != 0 &&
74 dynamic_size_list_.size() != dim) {
75 dynamic_size_list_.resize(dim);
76 }
77 if ((Flags() & CaFlag::InputQuantity) != 0 &&
78 input_quantity_list_.size() != dim) {
79 input_quantity_list_.resize(dim);
80 }
81 if ((Flags() & CaFlag::Axis) != 0 && (Flags() & CaFlag::FixedAxis) == 0 &&
82 axis_list_.size() != dim) {
83 axis_list_.resize(dim);
84 }
85 auto& value_list = AxisValues();
86 if ((Flags() & CaFlag::FixedAxis) != 0 && value_list.size() != sum_of_array) {
87 value_list.resize(sum_of_array, 0.0);
88 }
89 auto& cycle_list = CycleCounts();
90 switch (Storage()) {
91 case ArrayStorage::DgTemplate:
92 case ArrayStorage::CgTemplate:
93 if (cycle_list.size() != prod_of_array) {
94 cycle_list.resize(prod_of_array, 0);
95 }
96 break;
97
98 default:
99 break;
100 }
101}
102
103} // namespace mdf

Callers 2

TEST_FFunction · 0.80
EXPORTFEATUREFUNCFunction · 0.80

Calls 2

sizeMethod · 0.45
resizeMethod · 0.45

Tested by 1

TEST_FFunction · 0.64