00001
00002
00003
00004 #include<ImLib3D/ImLib3D.hpp>
00005 #include<ImLib3D/TemplateGroups.hpp>
00006
00007 #include<ImLib3D/StringArgumentConversion.hpp>
00008
00009 #include"plugin.hpp"
00010
00011 template<class ImageType >
00012 void
00013 ImProc_MyTestThreshold_StrArgs(const string &procName,const vector<string> &args,vector<TypeSafeGenericPointer> &alternateArgs)
00014 {
00015 typedef typename ImageType::value_type Im3DValue;
00016 ImageType& arg0 =*StringOrAlternateInputArg<ImageType >( args[0] ,alternateArgs,0 );
00017 Im3DValue& arg1 =*StringOrAlternateInputArg<Im3DValue >( args[1] ,alternateArgs,1 );
00018 Mask3D& arg2 =*CreateOutputArg<Mask3D >(alternateArgs,2 );
00019 int& arg3 =*OptionalDefaultValueArg<int >( args[3] ,alternateArgs,3 ,0);
00020 IP3D::MyTestThreshold(arg0, arg1, arg2, arg3);
00021 CleanupArg< ImageType >(arg0,alternateArgs,0);
00022 CleanupArg< Im3DValue >(arg1,alternateArgs,1);
00023 ImProcOutputArg< Mask3D >(arg2,args[2],alternateArgs,2);
00024 CleanupArg< Mask3D >(arg2,alternateArgs,2);
00025 }
00026 void StandardImProcCalls(const string &procName,const vector<string> &args,string typeName,vector<TypeSafeGenericPointer> alternateArgs=vector<TypeSafeGenericPointer>())
00027 {
00028 if(procName=="MyTestThreshold"){CallWithImage3DArithmeticComparable_3(ImProc_MyTestThreshold_StrArgs,typeName,procName,args,alternateArgs);}
00029 else
00030 {ThrowError("unimplemented call by name image processor interface for:\"%s\"please report this bug",procName);}
00031 }
00032 string hardcodedDescription(
00033 "PD94bWwgdmVyc2lvbj0iMS4wIj8+CjxJbWFnZVByb2Nlc3NvcnNEZXNjcmlwdGlvbj4KCjxJbWFnZVBy"
00034 "b2Nlc3NvciBuYW1lPSJNeVRlc3RUaHJlc2hvbGQiIHBhcmVudD0iVGhyZXNob2xkIiBwYWNrYWdlPSJF"
00035 "eGFtcGxlUGx1Z2luIiB0eXBlPSJzdGFuZGFyZCB0ZW1wbGF0ZWQiIHRlbXBsYXRlR3JvdXA9IkltYWdl"
00036 "M0RBcml0aG1ldGljQ29tcGFyYWJsZSI+CjxTaG9ydERlc2NyaXB0aW9uPlRoaXMgaXMgYSBzaG9ydCBk"
00037 "b2M8L1Nob3J0RGVzY3JpcHRpb24+CjxMb25nRGVzY3JpcHRpb24gPlRoaXMgc2hvdWxkIGJlIGEgbG9u"
00038 "Z2VyIGRlc2NyaXB0aW9uLjwvTG9uZ0Rlc2NyaXB0aW9uPgo8QXJndW1lbnQgbmFtZT0iU291cmNlIGlt"
00039 "YWdlIiAgIHR5cGU9IkltYWdlVHlwZSIgLz4KPEFyZ3VtZW50IG5hbWU9IlRocmVob2xkIHZhbHVlIiB0"
00040 "eXBlPSJJbTNEVmFsdWUiIC8+CjxBcmd1bWVudCBuYW1lPSJSZXN1bHQgaW1hZ2UiICAgdHlwZT0iTWFz"
00041 "azNEIiBkaXJlY3Rpb249Im91dHB1dCIvPgo8QXJndW1lbnQgbmFtZT0idW51c2VkIiAgICAgICAgIHR5"
00042 "cGU9ImludCIgaXNPcHRpb25hbD0idHJ1ZSIgIGRlZmF1bHRWYWx1ZT0iMCIvPgo8L0ltYWdlUHJvY2Vz"
00043 "c29yPgoKPC9JbWFnZVByb2Nlc3NvcnNEZXNjcmlwdGlvbj4K");
00044
00045 #include<ImLib3D/UserPlugin.hpp>
00046
00047 int
00048 main(int argc,char **argv)
00049 {
00050 UserPluginMain(argc,argv);
00051 return 0;
00052 }