Open Inventor Release 2024.2.0
 
Loading...
Searching...
No Matches
SoVRMrcFileReader.h
1/*=================================================================================
2*** THE CONTENT OF THIS WORK IS PROPRIETARY TO FEI S.A.S, (FEI S.A.S.), ***
3*** AND IS DISTRIBUTED UNDER A LICENSE AGREEMENT. ***
4*** ***
5*** REPRODUCTION, DISCLOSURE, OR USE, IN WHOLE OR IN PART, OTHER THAN AS ***
6*** SPECIFIED IN THE LICENSE ARE NOT TO BE UNDERTAKEN EXCEPT WITH PRIOR ***
7*** WRITTEN AUTHORIZATION OF FEI S.A.S. ***
8*** ***
9*** RESTRICTED RIGHTS LEGEND ***
10*** USE, DUPLICATION, OR DISCLOSURE BY THE GOVERNMENT OF THE CONTENT OF THIS ***
11*** WORK OR RELATED DOCUMENTATION IS SUBJECT TO RESTRICTIONS AS SET FORTH IN ***
12*** SUBPARAGRAPH (C)(1) OF THE COMMERCIAL COMPUTER SOFTWARE RESTRICTED RIGHT ***
13*** CLAUSE AT FAR 52.227-19 OR SUBPARAGRAPH (C)(1)(II) OF THE RIGHTS IN ***
14*** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 52.227-7013. ***
15*** ***
16*** COPYRIGHT (C) 1996-2023 BY FEI S.A.S, ***
17*** BORDEAUX, FRANCE ***
18*** ALL RIGHTS RESERVED ***
19=================================================================================*/
20
21#pragma once
22
23#include <LDM/readers/SoVolumeReader.h>
24#include <Inventor/SbPImpl.h>
25
26SO_PIMPL_BASE_PUBLIC_DECLARATION(SoVRMrcFileReader);
27
69{
70
71 SO_FIELDCONTAINER_HEADER(SoVRMrcFileReader);
72 SO_PIMPL_BASE_PUBLIC_HEADER(SoVRMrcFileReader);
73
74public:
75
78
82 virtual int setFilename( const SbString& filename ) override;
83
87 virtual ReadError getDataChar( SbBox3f& size, SoDataSet::DataType& type, SbVec3i32& dim ) override;
88
92 virtual void getSubSlice( const SbBox2i32& subSlice, int sliceNumber, void* data ) override;
93
97 virtual void getSubSlice( const SbBox2i32& subSlice, int sliceNumber, SoBufferObject* dataBuffer ) override;
98
103 {
104 return MRC;
105 }
106
110 virtual SbBool isThreadSafe() const override;
111
112private:
113
115 virtual ~SoVRMrcFileReader();
116};
117
2D box class.
Definition SbBox.h:2383
3D box class.
Definition SbBox.h:649
Class for smart character strings.
Definition SbString.h:202
3D vector class.
Definition SbVec.h:1517
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Abstract base cl...
DataType
Supported data type.
Definition SoDataSet.h:664
<a href="IconLegend.html"><img src="extVR.gif" alt="VolumeViz" border="0"></a> MRC file reader.
virtual SbBool isThreadSafe() const override
Return true as this reader is thread safe.
SoVRMrcFileReader()
Constructor.
virtual void getSubSlice(const SbBox2i32 &subSlice, int sliceNumber, SoBufferObject *dataBuffer) override
Same as getSubSlice( const SbBox2i32& subSlice, int sliceNumber, void * data ) but using an SoBufferO...
virtual SoVolumeReader::ReaderType getReaderType() override
Returns the reader type.
virtual ReadError getDataChar(SbBox3f &size, SoDataSet::DataType &type, SbVec3i32 &dim) override
Gets the characteristics (file header) of the data volume.
virtual int setFilename(const SbString &filename) override
Specifies the path of the file.
virtual void getSubSlice(const SbBox2i32 &subSlice, int sliceNumber, void *data) override
Must copy the rectangular part defined by subSlice of the XY slice sliceNumber to the memory refe...
<a href="IconLegend.html"><img src="extLDM.gif" alt="Large Data Management" border="0"></a> Abstract...
ReaderType
Available reader type.
ReadError
Read error.
int SbBool
Boolean type.
Definition SbBase.h:87