I don't quite understand what is ultimately needed. And where to find qtopcuaserver.h. If the goal is to reduce the number of variables in the OPC UA server, I had an option. Output only Signals. (There are fewer of them, and you write the name yourself). I thought this could be done with some argument when launching opcuaserver, but it's easier to just comment out the lines.
Code:
/* UA_NodeId pinsFolderId = createFolder("Pins");
hal_pin_t *currentPin;
for (currentPin = SHMPTR(hal_data->pin_list_ptr);
currentPin;
currentPin = SHMPTR(currentPin->next_ptr)) {
addVariableWithDataSource(currentPin->name,
currentPin->type,
currentPin->signal ? static_cast<void*>;(SHMPTR(SHMPTR(currentPin->signal)->data_ptr))
: static_cast<void*>;(&;(currentPin->dummysig)),
pinsFolderId);
}*/
UA_NodeId signalsFolderId = createFolder("Signals");
hal_sig_t *currentSig;
for (currentSig = SHMPTR(hal_data->sig_list_ptr);
currentSig; currentSig = SHMPTR(currentSig->next_ptr)) {
addVariableWithDataSource(currentSig->name,
currentSig->type,
SHMPTR(currentSig->data_ptr),
signalsFolderId);
}
/* UA_NodeId parametersFolderId = createFolder("Parameters");
hal_param_t *currentParam;
for (currentParam = SHMPTR(hal_data->param_list_ptr);
currentParam;
currentParam = SHMPTR(currentParam->next_ptr)) {
addVariableWithDataSource(currentParam->name,
currentParam->type,
SHMPTR(currentParam->data_ptr),
parametersFolderId);
}*/