! * \brief kernelCopy() * * \param[in] kels source kernel * \return keld copy of kels, or NULL on error */
| 172 | * \return keld copy of kels, or NULL on error |
| 173 | */ |
| 174 | L_KERNEL * |
| 175 | kernelCopy(L_KERNEL *kels) |
| 176 | { |
| 177 | l_int32 i, j, sx, sy, cx, cy; |
| 178 | L_KERNEL *keld; |
| 179 | |
| 180 | PROCNAME("kernelCopy"); |
| 181 | |
| 182 | if (!kels) |
| 183 | return (L_KERNEL *)ERROR_PTR("kels not defined", procName, NULL); |
| 184 | |
| 185 | kernelGetParameters(kels, &sy, &sx, &cy, &cx); |
| 186 | if ((keld = kernelCreate(sy, sx)) == NULL) |
| 187 | return (L_KERNEL *)ERROR_PTR("keld not made", procName, NULL); |
| 188 | keld->cy = cy; |
| 189 | keld->cx = cx; |
| 190 | for (i = 0; i < sy; i++) |
| 191 | for (j = 0; j < sx; j++) |
| 192 | keld->data[i][j] = kels->data[i][j]; |
| 193 | |
| 194 | return keld; |
| 195 | } |
| 196 | |
| 197 | |
| 198 | /*----------------------------------------------------------------------* |
no test coverage detected