public LibPackage(String p_name,int p_no,LibPackagePin[] p_pin_arr,PlaShape[] p_outline,DsnPackageKeepout[] p_keepout_arr,DsnPackageKeepout[] p_via_keepout_arr,DsnPackageKeepout[] p_place_keepout_arr,boolean p_is_front,LibPackages p_package_list){
  pkg_name=p_name;
  pkg_no=p_no;
  pin_arr=p_pin_arr;
  keepout_arr=p_keepout_arr;
  via_keepout_arr=p_via_keepout_arr;
  place_keepout_arr=p_place_keepout_arr;
  is_front=p_is_front;
  parent_package_list=p_package_list;
  outline_shapes=new ArrayList<PlaShape>(p_outline.length);
  for (int index=0; index < p_outline.length; index++)   outline_shapes.add(p_outline[index]);
}

public LibPackage ( String p_name , int p_no , LibPackagePin [ ] p_pin_arr , PlaShape [ ] p_outline , DsnPackageKeepout [ ] p_keepout_arr , DsnPackageKeepout [ ] p_via_keepout_arr , DsnPackageKeepout [ ] p_place_keepout_arr , boolean p_is_front , LibPackages p_package_list ) { pkg_name = p_name ; pkg_no = p_no ; pin_arr = p_pin_arr ; keepout_arr = p_keepout_arr ; via_keepout_arr = p_via_keepout_arr ; place_keepout_arr = p_place_keepout_arr ; is_front = p_is_front ; parent_package_list = p_package_list ; outline_shapes = new ArrayList < PlaShape > ( p_outline . length ) ; for ( int index = 0 ; index < p_outline . length ; index ++ ) outline_shapes . add ( p_outline [ index ] ) ; }
creates a new instance of package . p_package_list is the list of packages containing this package .
