Alembic Version 1.1
SchemaInfoDeclarations.h
Go to the documentation of this file.
1//-*****************************************************************************
2//
3// Copyright (c) 2009-2012,
4// Sony Pictures Imageworks, Inc. and
5// Industrial Light & Magic, a division of Lucasfilm Entertainment Company Ltd.
6//
7// All rights reserved.
8//
9// Redistribution and use in source and binary forms, with or without
10// modification, are permitted provided that the following conditions are
11// met:
12// * Redistributions of source code must retain the above copyright
13// notice, this list of conditions and the following disclaimer.
14// * Redistributions in binary form must reproduce the above
15// copyright notice, this list of conditions and the following disclaimer
16// in the documentation and/or other materials provided with the
17// distribution.
18// * Neither the name of Sony Pictures Imageworks, nor
19// Industrial Light & Magic nor the names of their contributors may be used
20// to endorse or promote products derived from this software without specific
21// prior written permission.
22//
23// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
26// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
27// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
29// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
33// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34//
35//-*****************************************************************************
36
37#ifndef Alembic_AbcGeom_SchemaInfoDeclarations_h
38#define Alembic_AbcGeom_SchemaInfoDeclarations_h
39
40#include <Alembic/Abc/OSchema.h>
42
43namespace Alembic {
44namespace AbcGeom {
45namespace ALEMBIC_VERSION_NS {
46
47//-*****************************************************************************
49
50//-*****************************************************************************
51// PolyMesh
52ALEMBIC_ABC_DECLARE_SCHEMA_INFO( "AbcGeom_PolyMesh_v1",
53 "AbcGeom_GeomBase_v1",
54 ".geom",
55 false,
56 PolyMeshSchemaInfo );
57
58#define ALEMBIC_ABCGEOM_POLYMESH_SCHEMA (PolyMeshSchemaInfo::title())
59
60//-*****************************************************************************
61// NuPatch
62ALEMBIC_ABC_DECLARE_SCHEMA_INFO( "AbcGeom_NuPatch_v2",
63 "AbcGeom_GeomBase_v1",
64 ".geom",
65 false,
66 NuPatchSchemaInfo );
67
68#define ALEMBIC_ABCGEOM_NUPATCH_SCHEMA (NuPatchSchemaInfo::title())
69
70//-*****************************************************************************
71// Subdivision surface
73 "AbcGeom_GeomBase_v1",
74 ".geom",
75 false,
76 SubDSchemaInfo );
77
78#define ALEMBIC_ABCGEOM_SUBD_SCHEMA (SubDSchemaInfo::title())
79
80//-*****************************************************************************
81// SubD and PolyMesh FaceSet
82ALEMBIC_ABC_DECLARE_SCHEMA_INFO( "AbcGeom_FaceSet_v1",
83 "AbcGeom_GeomBase_v1",
84 ".faceset",
85 false,
86 FaceSetSchemaInfo );
87
88#define ALEMBIC_ABCGEOM_PARITION_SCHEMA (FaceSetSchemaInfo::title())
89
90
91//-*****************************************************************************
92// Points
94 "AbcGeom_GeomBase_v1",
95 ".geom",
96 false,
97 PointsSchemaInfo );
98
99#define ALEMBIC_ABCGEOM_POINTS_SCHEMA (PointsSchemaInfo::title())
100
101//-*****************************************************************************
102// Xform
104 "",
105 ".xform",
106 true,
107 XformSchemaInfo );
108
109#define ALEMBIC_ABCGEOM_XFORM_SCHEMA (XformSchemaInfo::title())
110
111//-*****************************************************************************
112// Camera
114 "",
115 ".geom",
116 true,
117 CameraSchemaInfo );
118
119#define ALEMBIC_ABCGEOM_CAMERA_SCHEMA (CameraSchemaInfo::title())
120
121//-*****************************************************************************
122// Curves
124 "AbcGeom_GeomBase_v1",
125 ".geom",
126 false,
127 CurvesSchemaInfo );
128
129#define ALEMBIC_ABCGEOM_CURVE_SCHEMA (CurvesSchemaInfo::title())
130
131//-*****************************************************************************
132// Light
134 "",
135 ".geom",
136 true,
137 LightSchemaInfo );
138
139#define ALEMBIC_ABCGEOM_LIGHT_SCHEMA (LightSchemaInfo::title())
140
141//-*****************************************************************************
142// GeomBase, meant for convenience IGeomBase only
143ALEMBIC_ABC_DECLARE_SCHEMA_INFO( "AbcGeom_GeomBase_v1",
144 "",
145 ".geom",
146 false,
147 GeomBaseSchemaInfo );
148
149} // End namespace ALEMBIC_VERSION_NS
150
151using namespace ALEMBIC_VERSION_NS;
152
153} // End namespace AbcGeom
154} // End namespace Alembic
155
156
157#endif // header guard
#define ALEMBIC_VERSION_NS
Definition: Foundation.h:105
ALEMBIC_ABC_DECLARE_SCHEMA_INFO("AbcGeom_PolyMesh_v1", "AbcGeom_GeomBase_v1", ".geom", false, PolyMeshSchemaInfo)
Declare our schema info for AbcGeom.
Alembic namespace ...
Definition: ArchiveInfo.h:46