Declaring a new Built-in Operator


#1

Hello,

I have troubles running an operator I have implemented in Scidb.

I have created a new directory in src/query/ops with a Logical and a Physical file plus a .cpp and a .h file (I have just made a copy of the merge operator files and renamed it). I have also modified the BuildInOps.inc and CMakeList.txt files to include the new operator, but after compiling and launching scidb I always get an error stating :

AFL% getsound(test,test);
SystemException in file: src/query/OperatorLibrary.cpp function: createLogicalOperator line: 85
Error id: scidb::SCIDB_SE_QPROC::SCIDB_LE_LOGICAL_OP_DOESNT_EXIST
Error description: Query processor error. Logical operator ‘getsound’ does not exist.
Failed query id: 1102919980114

Are there other files I have to modify to implement my new operator? I have searched for documentation and read the threads in the forum but could not find any solution to my problem. Could you please help me?

Thanks


#2

Ok found it!

One has to reinitialise scidb after the operator has been implemented.


#3

Hi, dedcode,

I am trying the same thing as you. What do you mean reinitiaize? After your recompile it, it should be included right?

BTW, Could you share your example code for the modification? Thanks.


#4

Hello,

What do you mean re initialization? I am working on the same problem. Could you share your logical and physical example? THanks.