1 // -*- mode: cpp; mode: fold -*-
3 // $Id: pkgsystem.cc,v 1.3 2004/02/27 00:43:16 mdz Exp $
4 /* ######################################################################
6 System - Abstraction for running on different systems.
8 Basic general structure..
10 ##################################################################### */
12 // Include Files /*{{{*/
15 #include <apt-pkg/pkgsystem.h>
20 pkgSystem
*_system
= 0;
21 static pkgSystem
*SysList
[10];
22 pkgSystem
**pkgSystem::GlobalList
= SysList
;
23 unsigned long pkgSystem::GlobalListLen
= 0;
25 // System::pkgSystem - Constructor /*{{{*/
26 // ---------------------------------------------------------------------
27 /* Add it to the global list.. */
28 pkgSystem::pkgSystem() : Label(NULL
), VS(NULL
)
30 assert(GlobalListLen
< sizeof(SysList
)/sizeof(*SysList
));
31 SysList
[GlobalListLen
] = this;
35 // System::GetSystem - Get the named system /*{{{*/
36 // ---------------------------------------------------------------------
38 pkgSystem
*pkgSystem::GetSystem(const char *Label
)
40 for (unsigned I
= 0; I
!= GlobalListLen
; I
++)
41 if (strcmp(SysList
[I
]->Label
,Label
) == 0)