Skip to content

Commit 6114938

Browse files
committed
migrate to glue .desc
1 parent cfdd2ff commit 6114938

15 files changed

+48
-59
lines changed

nix_mx.cc

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,7 @@ void mexFunction(int nlhs,
100100
methods->add("File::createSection", nixfile::create_section);
101101

102102
classdef<nix::Block>("Block", methods)
103+
.desc(&nixblock::describe)
103104
.reg("dataArrays", &nix::Block::dataArrays)
104105
.reg("createSource", &nix::Block::createSource)
105106
//.reg("createDataArray", static_cast<nix::DataArray(nix::Block::*)(const std::string &, const std::string &, nix::DataType, const nix::NDSize &)>(&nix::Block::createDataArray))
@@ -115,35 +116,35 @@ void mexFunction(int nlhs,
115116
.reg("openTag", GETBYSTR(nix::Tag, nix::Block, getTag))
116117
.reg("openMultiTag", GETBYSTR(nix::MultiTag, nix::Block, getMultiTag))
117118
.reg("openMetadataSection", GETCONTENT(nix::Section, nix::Block, metadata));
118-
methods->add("Block::describe", nixblock::describe);
119119
methods->add("Block::createDataArray", nixblock::create_data_array);
120120

121121
classdef<nix::DataArray>("DataArray", methods)
122+
.desc(&nixdataarray::describe)
122123
.reg("sources", GETSOURCES(IDataArray))
123124
.reg("openMetadataSection", GETMETADATA(IDataArray));
124-
methods->add("DataArray::describe", nixdataarray::describe);
125125
methods->add("DataArray::readAll", nixdataarray::read_all);
126126
methods->add("DataArray::writeAll", nixdataarray::write_all);
127127

128128
classdef<nix::Source>("Source", methods)
129+
.desc(&nixsource::describe)
129130
.reg("sources", &nix::Source::sources)
130131
.reg("openSource", GETBYSTR(nix::Source, nix::Source, getSource))
131132
.reg("openMetadataSection", GETCONTENT(nix::Section, nix::Source, metadata));
132-
methods->add("Source::describe", nixsource::describe);
133133

134134
classdef<nix::Tag>("Tag", methods)
135+
.desc(&nixtag::describe)
135136
.reg("references", GETTER(std::vector<nix::DataArray>, nix::Tag, references))
136137
.reg("features", &nix::Tag::features)
137138
.reg("sources", GETSOURCES(ITag))
138139
.reg("openReferenceDataArray", GETBYSTR(nix::DataArray, nix::Tag, getReference))
139140
.reg("openFeature", GETBYSTR(nix::Feature, nix::Tag, getFeature))
140141
.reg("openSource", GETBYSTR(nix::Source, nix::Tag, getSource))
141142
.reg("openMetadataSection", GETCONTENT(nix::Section, nix::Tag, metadata));
142-
methods->add("Tag::describe", nixtag::describe);
143143
methods->add("Tag::retrieveData", nixtag::retrieve_data);
144144
methods->add("Tag::featureRetrieveData", nixtag::retrieve_feature_data);
145145

146146
classdef<nix::MultiTag>("MultiTag", methods)
147+
.desc(&nixmultitag::describe)
147148
.reg("references", GETTER(std::vector<nix::DataArray>, nix::MultiTag, references))
148149
.reg("features", &nix::MultiTag::features)
149150
.reg("sources", GETSOURCES(IMultiTag))
@@ -154,23 +155,22 @@ void mexFunction(int nlhs,
154155
.reg("openFeature", GETBYSTR(nix::Feature, nix::MultiTag, getFeature))
155156
.reg("openSource", GETBYSTR(nix::Source, nix::MultiTag, getSource))
156157
.reg("openMetadataSection", GETCONTENT(nix::Section, nix::MultiTag, metadata));
157-
methods->add("MultiTag::describe", nixmultitag::describe);
158158
methods->add("MultiTag::retrieveData", nixmultitag::retrieve_data);
159159
methods->add("MultiTag::featureRetrieveData", nixmultitag::retrieve_feature_data);
160160

161161
classdef<nix::Section>("Section", methods)
162+
.desc(&nixsection::describe)
162163
.reg("sections", &nix::Section::sections)
163164
.reg("openSection", GETBYSTR(nix::Section, nix::Section, getSection))
164165
.reg("hasProperty", GETBYSTR(bool, nix::Section, hasProperty))
165166
.reg("hasSection", GETBYSTR(bool, nix::Section, hasSection))
166167
.reg("link", GETCONTENT(nix::Section, nix::Section, link))
167168
.reg("parent", GETCONTENT(nix::Section, nix::Section, parent));
168-
methods->add("Section::describe", nixsection::describe);
169169
methods->add("Section::properties", nixsection::properties);
170170

171171
classdef<nix::Feature>("Feature", methods)
172+
.desc(&nixfeature::describe)
172173
.reg("openData", GETCONTENT(nix::DataArray, nix::Feature, data));
173-
methods->add("Feature::describe", nixfeature::describe);
174174
methods->add("Feature::linkType", nixfeature::link_type);
175175

176176
mexAtExit(on_exit);

src/nixblock.cc

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,18 +10,16 @@
1010

1111
namespace nixblock {
1212

13-
void describe(const extractor &input, infusor &output)
13+
mxArray *describe(const nix::Block &block)
1414
{
15-
nix::Block block = input.entity<nix::Block>(1);
16-
1715
struct_builder sb({ 1 }, { "id", "type", "name", "definition" });
1816

1917
sb.set(block.id());
2018
sb.set(block.type());
2119
sb.set(block.name());
2220
sb.set(block.definition());
2321

24-
output.set(0, sb.array());
22+
return sb.array();
2523
}
2624

2725
void create_data_array(const extractor &input, infusor &output)

src/nixblock.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
namespace nixblock {
77

8-
void describe(const extractor &input, infusor &output);
8+
mxArray *describe(const nix::Block &block);
99

1010
void create_data_array(const extractor &input, infusor &output);
1111

src/nixdataarray.cc

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,8 @@
1212

1313
namespace nixdataarray {
1414

15-
void describe(const extractor &input, infusor &output)
15+
mxArray *describe(const nix::DataArray &da)
1616
{
17-
nix::DataArray da = input.entity<nix::DataArray>(1);
18-
1917
struct_builder sb({ 1 }, { "id", "type", "name", "definition", "label",
2018
"shape", "unit", "dimensions", "polynom_coefficients" });
2119

@@ -53,7 +51,7 @@ namespace nixdataarray {
5351
sb.set(dims);
5452
sb.set(da.polynomCoefficients());
5553

56-
output.set(0, sb.array());
54+
return sb.array();
5755
}
5856

5957
void read_all(const extractor &input, infusor &output)

src/nixdataarray.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55

66
namespace nixdataarray {
77

8-
void describe(const extractor &input, infusor &output);
9-
8+
mxArray *describe(const nix::DataArray &da);
9+
1010
void read_all(const extractor &input, infusor &output);
1111

1212
void write_all(const extractor &input, infusor &output);

src/nixfeature.cc

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,11 @@
1010

1111
namespace nixfeature {
1212

13-
void describe(const extractor &input, infusor &output)
13+
mxArray *describe(const nix::Feature &feat)
1414
{
15-
nix::Feature currFeat = input.entity<nix::Feature>(1);
1615
struct_builder sb({ 1 }, { "id" });
17-
sb.set(currFeat.id());
18-
output.set(0, sb.array());
16+
sb.set(feat.id());
17+
return sb.array();
1918
}
2019

2120
void link_type(const extractor &input, infusor &output)

src/nixfeature.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
namespace nixfeature {
77

8-
void describe(const extractor &input, infusor &output);
8+
mxArray *describe(const nix::Feature &feat);
99

1010
void link_type(const extractor &input, infusor &output);
1111

src/nixmultitag.cc

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,18 +11,17 @@
1111

1212
namespace nixmultitag {
1313

14-
void describe(const extractor &input, infusor &output)
14+
mxArray *describe(const nix::MultiTag &multitag)
1515
{
16-
nix::MultiTag currObj = input.entity<nix::MultiTag>(1);
17-
1816
struct_builder sb({ 1 }, { "id", "type", "name", "definition", "units" });
19-
sb.set(currObj.id());
20-
sb.set(currObj.type());
21-
sb.set(currObj.name());
22-
sb.set(currObj.definition());
23-
sb.set(currObj.units());
2417

25-
output.set(0, sb.array());
18+
sb.set(multitag.id());
19+
sb.set(multitag.type());
20+
sb.set(multitag.name());
21+
sb.set(multitag.definition());
22+
sb.set(multitag.units());
23+
24+
return sb.array();
2625
}
2726

2827
void retrieve_data(const extractor &input, infusor &output) {

src/nixmultitag.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
namespace nixmultitag {
77

8-
void describe(const extractor &input, infusor &output);
8+
mxArray *describe(const nix::MultiTag &multitag);
99

1010
void retrieve_data(const extractor &input, infusor &output);
1111

src/nixsection.cc

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,8 @@
1111

1212
namespace nixsection {
1313

14-
void describe(const extractor &input, infusor &output)
14+
mxArray *describe(const nix::Section &section)
1515
{
16-
nix::Section section = input.entity<nix::Section>(1);
17-
1816
struct_builder sb({ 1 }, {
1917
"name", "id", "type", "repository", "mapping"
2018
});
@@ -25,7 +23,7 @@ void describe(const extractor &input, infusor &output)
2523
sb.set(section.repository());
2624
sb.set(section.mapping());
2725

28-
output.set(0, sb.array());
26+
return sb.array();
2927
}
3028

3129
void properties(const extractor &input, infusor &output)

0 commit comments

Comments
 (0)