1 /* 2 BAREOS® - Backup Archiving REcovery Open Sourced 3 4 Copyright (C) 2018-2018 Bareos GmbH & Co. KG 5 6 This program is Free Software; you can redistribute it and/or 7 modify it under the terms of version three of the GNU Affero General Public 8 License as published by the Free Software Foundation and included 9 in the file LICENSE. 10 11 This program is distributed in the hope that it will be useful, but 12 WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 Affero General Public License for more details. 15 16 You should have received a copy of the GNU Affero General Public License 17 along with this program; if not, write to the Free Software 18 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 19 02110-1301, USA. 20 */ 21 #ifndef BAREOS_LIB_JCR_H_ 22 #define BAREOS_LIB_JCR_H_ 23 class JobControlRecord; 24 25 void WriteStateFile(char* dir, const char* progname, int port); 26 void RegisterJobEndCallback(JobControlRecord* jcr, 27 void JobEndCb(JobControlRecord* jcr, void*), 28 void* ctx); 29 void LockJobs(); 30 void UnlockJobs(); 31 32 void LockJcrChain(); 33 void UnlockJcrChain(); 34 35 JobControlRecord* jcr_walk_start(); 36 JobControlRecord* jcr_walk_next(JobControlRecord* prev_jcr); 37 void JcrWalkEnd(JobControlRecord* jcr); 38 int JobCount(); 39 void InitJcrChain(); 40 void CleanupJcrChain(); 41 42 #endif // BAREOS_LIB_JCR_H_ 43