I only changed "SERVER_MANAGER_SOURCES vtk<span style="background-color: rgb(255, 255, 102);">CVS</span>ImageReader.cpp" to "SERVER_MANAGER_SOURCES vtk<span style="background-color: rgb(255, 255, 102);">CSV</span> ImageReader.cpp" and the corresponding file name. I didn't touch the class name (which was already vtk<span style="background-color: rgb(255, 255, 102);">CSV</span>ImageReader) neither in the xml, nor in the .h.<br>
and I can't figure out why there is a <span style="background-color: rgb(255, 255, 102);"><span style="background-color: rgb(255, 255, 255);"><b>symbol lookup error </b>since I also tried to build the <b>ExampleDockPanel </b>in the paraview>example>plugin>Dockwidget and it works. <br>
<br>here I append my source code maybe the problem is that I didn't implement the <b>New()</b> function?:<br></span></span><b>vtk<span style="background-color: rgb(255, 255, 102);">CSV</span> ImageReader.cpp</b>:<br><br>
<span style="background-color: rgb(255, 255, 102);"><span style="background-color: rgb(255, 255, 255);">vtkStandardNewMacro(vtkCSVImageReader);
<br>int vtkCSVImageReader::RequestInformation (
<br> vtkInformation*,
<br> vtkInformationVector**,
<br> vtkInformationVector* outputVector)
<br>{
<br> vtkInformation* outInfo = outputVector->GetInformationObject(0);
<br> <br> return 1;
<br>}
<br> <br>int vtkCSVImageReader::RequestData(
<br> vtkInformation*,
<br> vtkInformationVector**,
<br> vtkInformationVector* outputVector)
<br>{
<br> vtkInformation* outInfo = outputVector->GetInformationObject(0);
<br> vtkStructuredGrid* output = vtkStructuredGrid::SafeDownCast(outInfo->Get(vtkDataObject::DATA_OBJECT() ) );
<br> vtkPoints* pts= output->GetPoints();
<br> <br></span></span><br><span style="background-color: rgb(255, 255, 102);"><span style="background-color: rgb(255, 255, 255);">vtkDataArray* dummy=vtkDataArray::CreateDataArray(VTK_FLOAT);
<br>dummy->SetNumberOfTuples(8);
<br>dummy->SetNumberOfComponents(3);
<br>const float P1[3]={0.,0.,0.};
<br>const float P2[3]={1.,0.,0.};
<br>const float P3[3]={0.,1.,0.};
<br>const float P4[3]={1.,1.,0.};
<br>const float P5[3]={0.,0.,1.};
<br>const float P6[3]={1.,0.,1.};
<br>const float P7[3]={0.,1.,1.};
<br>const float P8[3]={1.,1.,1.};
<br>dummy->SetTuple(0, P1);
<br>dummy->SetTuple(0, P2);
<br>dummy->SetTuple(0, P3);
<br>dummy->SetTuple(0, P4);
<br>dummy->SetTuple(0, P5);
<br>dummy->SetTuple(0, P6);
<br>dummy->SetTuple(0, P7);
<br>dummy->SetTuple(0, P8);
<br>pts->SetData(dummy);
<br> <br> return 1;
<br>} <br><br><br></span></span><span style="background-color: rgb(255, 255, 102);"><span style="background-color: rgb(255, 255, 255);"> </span></span><b>vtk<span style="background-color: rgb(255, 255, 102);">CSV</span> ImageReader.h</b>:<br>
class vtkCSVImageReader : public vtkStructuredGridAlgorithm
<br>{
<br>public:
<br> static vtkCSVImageReader* New();
<br> vtkTypeMacro(vtkCSVImageReader,vtkStructuredGridAlgorithm);
<br> void PrintSelf(ostream& os, vtkIndent indent);
<br> <br> virtual void SetFileName(const char* fname);
<br> virtual const char* GetFileName();
<br> virtual void SetFieldDelimiterCharacters(
<br> const char* delim);
<br> virtual const char* GetFieldDelimiterCharacters();
<br> <br>protected:
<br> vtkCSVImageReader();
<br> ~vtkCSVImageReader();
<br> <br> int RequestInformation(
<br> vtkInformation*,
<br> vtkInformationVector**,
<br> vtkInformationVector*);
<br> <br> int RequestData(
<br> vtkInformation*,
<br> vtkInformationVector**,
<br> vtkInformationVector*);
<br> <br> vtkDelimitedTextReader * Reader;
<br> <br>private:
<br> vtkCSVImageReader(const vtkCSVImageReader&);
<br> void operator=(const vtkCSVImageReader&);
<br>}; <br><br><br>PS: I do include the vtkObjectFactory <br><br>Great thanks<br><br><br><div class="gmail_quote">2011/4/27 Utkarsh Ayachit <span dir="ltr"><<a href="mailto:utkarsh.ayachit@kitware.com">utkarsh.ayachit@kitware.com</a>></span><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Did you forget to change the class name in the XML?<br>
<br>
Utkarsh<br>
<br>
2011/4/27 papa ndéné NDIAYE <<a href="mailto:pnwireframe@gmail.com">pnwireframe@gmail.com</a>>:<br>
<div><div></div><div class="h5">> Hi everyone,<br>
><br>
> I am trying to make a reader and I get the error message above when trying<br>
> to open a file.<br>
> I am running Centos5 (64 bit) and compiled paraview with Qt 4.6.3, VTK<br>
> 5.2.1 and CMAKE 2.8.4.<br>
> the same goes for my reader plugin.<br>
> Here is my CmakeList.txt:<br>
> cmake_minimum_required(VERSION 2.6)<br>
> if(COMMAND cmake_policy)<br>
> cmake_policy(SET CMP0003 NEW)<br>
> endif(COMMAND cmake_policy)<br>
> FIND_PACKAGE(ParaView REQUIRED)<br>
> INCLUDE(${PARAVIEW_USE_FILE})<br>
> INCLUDE_DIRECTORIES(${INCLUDE_DIRECTORIES} ../)<br>
><br>
> ADD_PARAVIEW_PLUGIN(CSVImage "1.0"<br>
> SERVER_MANAGER_XML CSVImage.xml<br>
> SERVER_MANAGER_SOURCES vtkCVSImageReader.cpp<br>
> GUI_RESOURCE_FILES CSVImageGUI.xml<br>
> )<br>
><br>
> and I get error:<br>
><br>
> vtkProcessModule (0xb621b30): Cannot create object of type<br>
> "vtkCSVImageReader".<br>
> while processing<br>
> Message 0 = New<br>
> Argument 0 = string_value {vtkCSVImageReader}<br>
> Argument 1 = id_value {149}<br>
><br>
><br>
> when I change the CVS to CSV (renaming the .cpp file too) I get another<br>
> error:<br>
><br>
> paraview: symbol lookup error:<br>
> ~/dev/CVSreader/libCSVImage.so: undefined symbol: _ZN17vtkCSVImageReaderC1Ev<br>
><br>
> which I do not understand since I built both paraview and the plugin on the<br>
> same computer<br>
><br>
> hope someone could help me.<br>
><br>
> Regards<br>
> papa<br>
><br>
><br>
><br>
</div></div>> _______________________________________________<br>
> Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
><br>
> Visit other Kitware open-source projects at<br>
> <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
><br>
> Please keep messages on-topic and check the ParaView Wiki at:<br>
> <a href="http://paraview.org/Wiki/ParaView" target="_blank">http://paraview.org/Wiki/ParaView</a><br>
><br>
> Follow this link to subscribe/unsubscribe:<br>
> <a href="http://www.paraview.org/mailman/listinfo/paraview" target="_blank">http://www.paraview.org/mailman/listinfo/paraview</a><br>
><br>
><br>
</blockquote></div><br>