13ed852eea50f9d4cd633efb8c2b054b8e33c253cristy/*
27ce65e7125a4e1df1a274ce373c537a9df9c16cdCristy  Copyright 1999-2016 ImageMagick Studio LLC, a non-profit organization
33ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  dedicated to making software imaging solutions freely available.
43ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
53ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  You may not use this file except in compliance with the License.
63ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  obtain a copy of the License at
73ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
83ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    http://www.imagemagick.org/script/license.php
93ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
103ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  Unless required by applicable law or agreed to in writing, software
113ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  distributed under the License is distributed on an "AS IS" BASIS,
123ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
133ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  See the License for the specific language governing permissions and
143ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  limitations under the License.
153ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
163ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  MagickCore registry methods.
173ed852eea50f9d4cd633efb8c2b054b8e33c253cristy*/
1883bceaa5d7a1196e05c1ccba443f90f4b032fca6Cristy#ifndef MAGICKCORE_REGISTRY_H
1983bceaa5d7a1196e05c1ccba443f90f4b032fca6Cristy#define MAGICKCORE_REGISTRY_H
203ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
213ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#if defined(__cplusplus) || defined(c_plusplus)
223ed852eea50f9d4cd633efb8c2b054b8e33c253cristyextern "C" {
233ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#endif
243ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
253ed852eea50f9d4cd633efb8c2b054b8e33c253cristytypedef enum
263ed852eea50f9d4cd633efb8c2b054b8e33c253cristy{
273ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  UndefinedRegistryType,
283ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  ImageRegistryType,
293ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  ImageInfoRegistryType,
303ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  StringRegistryType
313ed852eea50f9d4cd633efb8c2b054b8e33c253cristy} RegistryType;
323ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
333ed852eea50f9d4cd633efb8c2b054b8e33c253cristyextern MagickExport char
343ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  *GetNextImageRegistry(void);
353ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
363ed852eea50f9d4cd633efb8c2b054b8e33c253cristyextern MagickExport MagickBooleanType
373ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  DefineImageRegistry(const RegistryType,const char *,ExceptionInfo *),
383ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  DeleteImageRegistry(const char *),
393ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  SetImageRegistry(const RegistryType,const char *,const void *,
403ed852eea50f9d4cd633efb8c2b054b8e33c253cristy    ExceptionInfo *);
413ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
423ed852eea50f9d4cd633efb8c2b054b8e33c253cristyextern MagickExport void
433ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  *GetImageRegistry(const RegistryType,const char *,ExceptionInfo *),
443ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  *RemoveImageRegistry(const char *),
453ed852eea50f9d4cd633efb8c2b054b8e33c253cristy  ResetImageRegistryIterator(void);
463ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
473ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#if defined(__cplusplus) || defined(c_plusplus)
483ed852eea50f9d4cd633efb8c2b054b8e33c253cristy}
493ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#endif
503ed852eea50f9d4cd633efb8c2b054b8e33c253cristy
513ed852eea50f9d4cd633efb8c2b054b8e33c253cristy#endif
52