blob: 4563bcc16931d1676b9e2dc00f1e4c706a3457cd [file] [log] [blame]
cristy3ed852e2009-09-05 21:47:34 +00001/*
2%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3% %
4% %
5% %
6% CCCC L IIIII EEEEE N N TTTTT %
7% C L I E NN N T %
8% C L I EEE N N N T %
9% C L I E N NN T %
10% CCCC LLLLL IIIII EEEEE N N T %
11% %
12% %
13% MagickCore Client Methods %
14% %
15% Software Design %
cristyde984cd2013-12-01 14:49:27 +000016% Cristy %
cristy3ed852e2009-09-05 21:47:34 +000017% March 2003 %
18% %
19% %
cristyb56bb242014-11-25 17:12:48 +000020% Copyright 1999-2015 ImageMagick Studio LLC, a non-profit organization %
cristy3ed852e2009-09-05 21:47:34 +000021% dedicated to making software imaging solutions freely available. %
22% %
23% You may not use this file except in compliance with the License. You may %
24% obtain a copy of the License at %
25% %
26% http://www.imagemagick.org/script/license.php %
27% %
28% Unless required by applicable law or agreed to in writing, software %
29% distributed under the License is distributed on an "AS IS" BASIS, %
30% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. %
31% See the License for the specific language governing permissions and %
32% limitations under the License. %
33% %
34%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
35%
36%
37*/
38
39/*
40 Include declarations.
41*/
cristy4c08aed2011-07-01 19:47:50 +000042#include "MagickCore/studio.h"
43#include "MagickCore/client.h"
44#include "MagickCore/string_.h"
cristy3ed852e2009-09-05 21:47:34 +000045
46/*
cristy3ed852e2009-09-05 21:47:34 +000047%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
48% %
49% %
50% %
51% G e t C l i e n t N a m e %
52% %
53% %
54% %
55%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
56%
57% GetClientName returns the current client name.
58%
59% The format of the GetClientName method is:
60%
61% const char *GetClientName(void)
62%
63*/
64MagickExport const char *GetClientName(void)
65{
cristyad1c7162009-11-03 01:01:07 +000066 return(SetClientName((const char *) NULL));
cristy3ed852e2009-09-05 21:47:34 +000067}
68
69/*
70%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
71% %
72% %
73% %
74% G e t C l i e n t P a t h %
75% %
76% %
77% %
78%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
79%
80% GetClientPath returns the current client name.
81%
82% The format of the GetClientPath method is:
83%
84% const char *GetClientPath(void)
85%
86*/
87MagickExport const char *GetClientPath(void)
88{
cristyad1c7162009-11-03 01:01:07 +000089 return(SetClientPath((const char *) NULL));
cristy3ed852e2009-09-05 21:47:34 +000090}
91
92/*
93%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
94% %
95% %
96% %
97% S e t C l i e n t N a m e %
98% %
99% %
100% %
101%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
102%
103% SetClientName sets the client name and returns it.
104%
105% The format of the SetClientName method is:
106%
107% const char *SetClientName(const char *name)
108%
109% A description of each parameter follows:
110%
cristy3ed852e2009-09-05 21:47:34 +0000111% o name: Specifies the new client name.
112%
113*/
114MagickExport const char *SetClientName(const char *name)
115{
cristyad1c7162009-11-03 01:01:07 +0000116 static char
cristy151b66d2015-04-15 10:50:31 +0000117 client_name[MagickPathExtent] = "Magick";
cristyad1c7162009-11-03 01:01:07 +0000118
cristy3ed852e2009-09-05 21:47:34 +0000119 if ((name != (char *) NULL) && (*name != '\0'))
cristy151b66d2015-04-15 10:50:31 +0000120 (void) CopyMagickString(client_name,name,MagickPathExtent);
cristy3ed852e2009-09-05 21:47:34 +0000121 return(client_name);
122}
123
124/*
125%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
126% %
127% %
128% %
129% S e t C l i e n t P a t h %
130% %
131% %
132% %
133%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
134%
135% SetClientPath() sets the client path if the name is specified. Otherwise
136% the current client path is returned. A zero-length string is returned if
137% the client path has never been set.
138%
139% The format of the SetClientPath method is:
140%
141% const char *SetClientPath(const char *path)
142%
143% A description of each parameter follows:
144%
cristy3ed852e2009-09-05 21:47:34 +0000145% o path: Specifies the new client path.
146%
cristy3ed852e2009-09-05 21:47:34 +0000147*/
148MagickExport const char *SetClientPath(const char *path)
149{
cristyad1c7162009-11-03 01:01:07 +0000150 static char
cristy151b66d2015-04-15 10:50:31 +0000151 client_path[MagickPathExtent] = "";
cristyad1c7162009-11-03 01:01:07 +0000152
cristy3ed852e2009-09-05 21:47:34 +0000153 if ((path != (char *) NULL) && (*path != '\0'))
cristy151b66d2015-04-15 10:50:31 +0000154 (void) CopyMagickString(client_path,path,MagickPathExtent);
cristy3ed852e2009-09-05 21:47:34 +0000155 return(client_path);
156}