MCPcopy Create free account
hub / github.com/GaijinEntertainment/daScript / walk_dim

Method walk_dim

src/simulate/data_walker.cpp:121–138  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

119 }
120
121 void DataWalker::walk_dim ( char * pa, TypeInfo * ti ) {
122 TypeInfo copyInfo = *ti;
123 DAS_ASSERT(copyInfo.dimSize);
124 copyInfo.size = ti->dim[0] ? copyInfo.size / ti->dim[0] : copyInfo.size;
125 copyInfo.dimSize --;
126 vector<uint32_t> udim;
127 if ( copyInfo.dimSize ) {
128 for ( uint32_t i=0, is=copyInfo.dimSize; i!=is; ++i) {
129 udim.push_back(ti->dim[i+1]);
130 }
131 copyInfo.dim = udim.data();
132 } else {
133 copyInfo.dim = nullptr;
134 }
135 uint32_t stride = copyInfo.size;
136 uint32_t count = ti->dim[0];
137 walk_array(pa, stride, count, &copyInfo);
138 }
139
140 void DataWalker::walk_table ( Table * tab, TypeInfo * info ) {
141 if ( !canVisitTableData(info) ) return;

Callers 1

walkMethod · 0.45

Calls 2

push_backMethod · 0.45
dataMethod · 0.45

Tested by

no test coverage detected