34#ifndef CARTODATA_VOLUME_VOLUMEBASE_D_INSTANTIATE_H
35#define CARTODATA_VOLUME_VOLUMEBASE_D_INSTANTIATE_H
40#include <cartobase/smart/rcptr.h>
41#include <cartobase/type/types.h>
42#include <cartobase/type/voxelrgb.h>
43#include <cartobase/type/voxelhsv.h>
44#include <soma-io/vector/vector.h>
57#if !defined(__sun__) || !defined(_CHAR_IS_SIGNED)
79#ifdef CARTO_LONG_IS_DISTINCT
84 extern template class Creator<Volume<bool> >;
85 extern template class Creator<Volume<int8_t> >;
86 extern template class Creator<Volume<uint8_t> >;
88#if !defined(__sun__) || !defined(_CHAR_IS_SIGNED)
89 extern template class Creator<Volume<char> >;
91 extern template class Creator<Volume<int16_t> >;
92 extern template class Creator<Volume<uint16_t> >;
93 extern template class Creator<Volume<int32_t> >;
94 extern template class Creator<Volume<uint32_t> >;
95 extern template class Creator<Volume<int64_t> >;
96 extern template class Creator<Volume<uint64_t> >;
97 extern template class Creator<Volume<float> >;
98 extern template class Creator<Volume<double> >;
99 extern template class Creator<Volume<cfloat> >;
100 extern template class Creator<Volume<cdouble> >;
101 extern template class Creator<Volume< std::map<int, float> > >;
102 extern template class Creator<Volume<soma::VoxelRGB> >;
103 extern template class Creator<Volume<soma::VoxelRGBA> >;
104 extern template class Creator<Volume<soma::VoxelHSV> >;
105 extern template class Creator<Point3df>;
106 extern template class Creator<Point3d>;
107 extern template class Creator<Point3dd>;
108 extern template class Creator<Point2d>;
109 extern template class Creator<AimsVector<float,6> >;
110#ifdef CARTO_LONG_IS_DISTINCT
111 extern template class Creator<Volume<long> >;
112 extern template class Creator<Volume<unsigned long> >;
116 DECLARE_GENERIC_OBJECT_TYPE(
rc_ptr<
Volume< int8_t > > )
117 DECLARE_GENERIC_OBJECT_TYPE(
rc_ptr<
Volume< uint8_t > > )
118#if !defined(__sun__) || !defined(_CHAR_IS_SIGNED)
122 DECLARE_GENERIC_OBJECT_TYPE(
rc_ptr<
Volume< uint16_t > > )
123 DECLARE_GENERIC_OBJECT_TYPE(
rc_ptr<
Volume< int32_t > > )
124 DECLARE_GENERIC_OBJECT_TYPE(
rc_ptr<
Volume< uint32_t > > )
125 DECLARE_GENERIC_OBJECT_TYPE(
rc_ptr<
Volume< int64_t > > )
126 DECLARE_GENERIC_OBJECT_TYPE(
rc_ptr<
Volume< uint64_t > > )
128 DECLARE_GENERIC_OBJECT_TYPE(
rc_ptr<
Volume<
double > > )
129 DECLARE_GENERIC_OBJECT_TYPE(
rc_ptr<
Volume< cfloat > > )
130 DECLARE_GENERIC_OBJECT_TYPE(
rc_ptr<
Volume< cdouble > > )
134 DECLARE_GENERIC_OBJECT_TYPE(
rc_ptr<
Volume< Point3df > > )
135 DECLARE_GENERIC_OBJECT_TYPE(
rc_ptr<
Volume< Point3d > > )
136 DECLARE_GENERIC_OBJECT_TYPE(
rc_ptr<
Volume< Point3dd > > )
137 DECLARE_GENERIC_OBJECT_TYPE(
rc_ptr<
Volume< Point2d > > )
141#ifdef CARTO_LONG_IS_DISTINCT
#define DECLARE_GENERIC_OBJECT_TYPE(T)